server {
listen 80;
server_name _;
location /test/ {
proxy_pass http://example.com/page.php;
}
}
Atualmente, quando uso este proxy reverso Nginx, quando visito de test.com/test/
, ele me serve https://example.com/page.php
, mas a URL permanece a mesma. Quando eu chamo $_SERVER['http_host']
, ele retorna o hostname de example.com, em vez do hostname do qual fiz a solicitação (url no domínio).
Eu tentei usar: proxy_set_header Host $host;
, mas isso me leva a uma página 404 depois que eu executo isso.
Em suma,
Gostaria de visitar test.com/test
e ser servido link but have the
hostname of
test.com / test when I call
$ _ SERVER 'em PHP
EDITAR:
events {
worker_connections 1024;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
server {
listen 80;
server_name _;
location / {
proxy_set_header Host $host; #works without this
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_intercept_errors on;
proxy_pass http://example.com;
}
}
}