Я уже пробовал предложения, упомянутые в:
Скрыть порт в перенаправлении обратного прокси Nginx
но мне это не помогает.
Я сделал обратный прокси-сервер nginx для своего приложения django + gunicorn, и он открыт на порту 8000. Я могу получить доступ к имени машины как http: // some_machine: 8000 чтобы увидеть, как работает мое приложение. Я сопоставил локальный хост, работающий на этой машине, с именем машины, используя обратный прокси-сервер Nginx. Я хочу скрыть порт, а в URL-адресе нужно что-то вроде http: // some_machine / zmk вместо того http: // some_machine: 8000 / zmk.
Я пишу содержимое ниже на свой /etc/nginx/conf.d
папка:
upstream zms {
ip_hash;
server zms:8000;
}
# portal
server {
location /zmk {
proxy_pass http://zms/;
# proxy_redirect http://some-machine:8000/ http://some-machine/zmk;
port_in_redirect off;
# autoindex on;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 8000;
server_name localhost
server_name_in_redirect off;
}
Я не понимаю, что делаю не так? Я также попытался скопировать вышеуказанный контент в /etc/nginx/site-available
папка.
Измените свой listen
заявление к listen 80
вместо. Таким образом, ваш сервер nginx будет прослушивать порт 80 и передавать трафик на порт 8000.