我已经在这里阅读了很多关于nginx配置的问题和答案,但是没有一个显示的配置对我有用。我需要将nginx配置为Liferay门户服务器前面的反向代理,在端口8080上运行.Liferay门户托管多个网站,这些网站可以作为"虚拟主机"在不同的网址下,例如" firstsite.myserver.com"和" secondsite.myserver.com"。 因此,来自反向代理的请求必须保留原始请求的URL,只需将端口从80更改为8080.
我的问题:无论我尝试什么,请求只使用localhost IP 127.0.0.1而不是完整的URL到达我的Liferay服务器,并且所有"内部"使用127.0.0.1而不是域名生成服务器中的链接。仅仅为一个网站提供一个工作配置就足够了,然后我可以用类似的方式建立其他网站。
这是我尝试代理配置的一个片段:
server {
listen 80;
server_name firstsite.myserver.com;
location / {
proxy_set_header Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://firstsite.myserver.com:8080/;
}
还试过这样的事情:
server {
listen 80;
server_name secondsite.myserver.com;
location / {
proxy_pass http://secondsite.myserver.com:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect http://$host:8080/ http://$host/;
}
说实话,我无法弄清楚上面例子中使用的$ host变量的设置位置和方式。我在Windows平台b.t.w.任何帮助将非常感谢,如何配置nging到简单的路线" http://firstsite.myserver.com"到" http://firstsite.myserver.com:8080"通过反向代理返回。