nginx作为Liferay portal server前面的反向代理

nginx作为Liferay portal server前面的反向代理,nginx,proxy,liferay,Nginx,Proxy,Liferay,我已经在这里阅读了很多关于nginx配置的问题和答案,但是没有一个配置适合我。我需要将nginx配置为在端口8080上运行的Liferay门户服务器前面充当反向代理。Liferay门户托管多个网站,这些网站可以作为不同URL下的“虚拟主机”访问,如“firstsite.myserver.com”和“secondsite.myserver.com”。 因此,来自反向代理的请求必须保持原始请求的url,只需将端口从80更改为8080即可 我的问题是:无论我尝试什么,请求到达我的Liferay服务器时

我已经在这里阅读了很多关于nginx配置的问题和答案,但是没有一个配置适合我。我需要将nginx配置为在端口8080上运行的Liferay门户服务器前面充当反向代理。Liferay门户托管多个网站,这些网站可以作为不同URL下的“虚拟主机”访问,如“firstsite.myserver.com”和“secondsite.myserver.com”。 因此,来自反向代理的请求必须保持原始请求的url,只需将端口从80更改为8080即可

我的问题是:无论我尝试什么,请求到达我的Liferay服务器时只使用本地主机IP 127.0.0.1而不是完整的URL,并且服务器中的所有“内部”链接都是使用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,使其通过反向代理来回简单路由到“”。

您是否已将站点设置中的站点主机设置为?您是指Liferay中的虚拟主机设置?是的,我已经在两个站点中设置了虚拟主机设置,还从portal-ext.properties中删除了web.server.host属性,因为这只适用于门户服务器仅承载一个域的情况。