我正在尝试建立一个简单的静态网站,但 nginx 存在一个问题,该问题因许多事情而变得复杂,最值得注意的是我的 ISP 阻止了所有入站端口 80 流量。
首先,我设置了一个网络转发,以便 www.mysite.com 将重定向到 mysite.com:8000,然后我设置我的路由器将端口 8000 转发到运行 nginx 的服务器。这绕过了我的 ISP 在端口 80 上的阻塞。我现在尝试让服务器上的 nginx 将端口 8000 上的请求代理到端口 80 上的虚拟主机,以便该站点在加载后显示为 mysite.com比 mysite.com:8000。
我一直在尝试使用 nginx 的proxy_pass
指令来执行此操作,但无论我做什么,该站点始终显示为 mysite.com:8000。
这是我到目前为止所拥有的:
server {
listen [::]:8000
server_name mysite.com;
location / {
proxy_pass http://127.0.0.1:80;
proxy_redirect default;
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;
proxy_set_header X-Forwarded-Proto http;
}
}
server {
listen 127.0.0.1:80;
server_name mysite.com;
root /var/www/homepage;
index index.html;
.
. (non-relevant stuff)
.
}
链接到实际网站:http ://www.bjacobel.com
我还尝试通过将路由器上的端口 8000 转发到端口 80,并让 nginx 在端口 80 上侦听来做到这一点,但其中包含 :8000 的 url 仍然显示。
谢谢你的帮助!