导读 在配置Nginx时,我们常会遇到监听非80端口(比如8080)并反向代理到80端口的情况。但有时会出现页面跳转错误,导致链接变成http://example....
在配置Nginx时,我们常会遇到监听非80端口(比如8080)并反向代理到80端口的情况。但有时会出现页面跳转错误,导致链接变成http://example.com:8080/,而非预期的http://example.com/。这主要是因为浏览器默认使用请求中的协议和端口号进行跳转,而Nginx未正确传递相关信息。
解决方法其实很简单:在Nginx配置文件中添加`proxy_set_header Host $host;` 和 `proxy_set_header X-Forwarded-Proto $scheme;`。这样可以让后端服务器获取正确的协议信息,并确保跳转路径保持一致。例如:
```nginx
server {
listen 8080;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:80;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
```
完成修改后记得重启Nginx服务(`systemctl restart nginx`),问题即可迎刃而解!💡
记住,细节决定成败,配置时务必小心谨慎哦!💪
版权声明:本文由用户上传,如有侵权请联系删除!