我想测试Liferay(Liferay 7.0-ga4)的最后一个版本并将其安装在反向代理(nginx)后面。我使用码头和码头组成测试目的,并创建一个虚拟域docker.domain.com
。执行Liferay behing Nginx反向代理
如果我直接访问它的URL并且没有配置反向代理,Liferay会正常工作。
另外,我有成功安装的Liferay Nginx的服务器之后,如果我用根位置:
location/{
proxy_pass http://liferay:8080;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
凡liferay
在proxy_pass部分是在泊坞窗撰写链接泊坞窗容器的名称。和Liferay的选项:
web.server.host=docker.domain.com
web.server.protocol=http
web.server.http.port=80
在Liferay中配置反向代理。结果是正确的,如果我输入http://docker.domain.com/
:
我可以登录,接受条款和条件,......一切似乎都很好。
但是,当我使用不是根的位置(即/ lifeay)时,我一般都会遇到链接,图像和css的问题。
随着nginx的类似configuraion:
location /liferay {
proxy_pass http://liferay:8080;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
和增加的建议here到Liferay的配置:
portal.proxy.path=/liferay
当访问到http://docker.domain.com/liferay
所有网址都搞砸了和CSS没有显示。在这里,我附上了最终结果的截图:
有趣的是,该行
http://docker.domain.com/liferay/liferay
哪里“的Liferay”出现两次在URL中。有些错误出现在Liferay的Tomcat的日志:
12:48:29,019 WARN [http-nio-8080-exec-3][code_jsp:172] {code="404", msg="/liferay/o/mentions-web/css/mentions.css", uri=/liferay/o/mentions-web/css/mentions.css}
12:48:29,021 WARN [http-nio-8080-exec-8][code_jsp:172] {code="404", msg="/liferay/o/frontend-css-web/main.css", uri=/liferay/o/frontend-css-web/main.css}
....
显然,有些文件不会被发现。我用docker github创建了一个简单的例子来测试它,如果有人感兴趣只花几分钟。尽管如此,我很确定我的Liferay配置中缺少某些内容,但我无法弄清楚。至少我无法在官方文档中找到任何线索。