最近使用vps做了许多网站,便用nginx做proxy。期间遇到了一些问题。 刚开始的配置如下: server { listen 80; server_name www.qiqufang.com; location / { proxy_pass http://112.213.109.16:8080/; } } 配置这个很简单,但是访问网站的时候就遇到了许多的麻烦. (1)网站页面中直接读取了服务器ip和端口号。 (2)在网站服务端不能正确获取到port.或者做重定向的时候地址总是丢掉端口(port)。 最简单的解决方案,修改Nginx的配置文件: server { listen 80; server_name www.qiqufang.com; server_name_in_redirect off; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location / { proxy_pass http://112.213.109.16:8080/; } } 如上才是正确的配置nginx。其中的proxy_set_header Host $host:$server_port; 这一行非常关键。 文章来源:http://www.bywei.cn/post/122.html
发表评论