我花了几个小时才弄清楚这一点。为什么我的代理总是显示 nginx 默认页面?
server {
listen 80;
server_name subdomain.mydomain.com;
location / {
proxy_pass http://example.com;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
服务器块似乎从未被触及。它只是直接进入默认页面,就好像该块根本不存在一样。它已正确链接到启用站点,DNS 也已设置,否则我将看不到默认页面,我重新启动了 nginx,我所有的常规服务器块都按预期工作。
也许这对将来的人有帮助。我不知道为什么,但这成功了:
server {
listen 80;
listen [::]:80;
server_name mysub.mydomain.com;
location / {
proxy_pass http://10.0.0.11:3333;
include proxy_params;
}
}
我包含了 proxy_params 并添加了监听 [::]:80;
这适用于 Ubuntu 22.04