我有一台服务器运行以下应用程序:
每个应用程序都有自己的子域。
我设法通过如下配置我的VirtualHost来让JIRA使用其子域:
<VirtualHost *:80>
ServerName jira.thelavender.net
ProxyRequests Off
ProxyVia Block
ProxyPreserveHost On
<Proxy *>
Require all granted
</Proxy>
ProxyPass /jira http://thelavender.net:8080/jira
ProxyPassReverse /jira http://thelavender.net:8080/jira
# JIRA AJP Proxy Configuration:
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass / ajp://thelavender.net:8009/
ProxyPassReverse / ajp://thelavender.net:8009/
</VirtualHost>
然后我复制了这个配置,将其重命名为confluence.conf,编辑了信息,使其与Confluence的信息相匹配。确保已启用站点的目录有正确的符号链接。
重启Apache 重新启动Confluence
我仍然可以通过转到thelavender.net/wiki
来到Confluence,但每当我转到wiki.thelavender.net
时,JIRA最终会加载。
我必须对我的JIRA / Tomcat server.xml
做的唯一特别的事情是取消注释:
<Connector port="8009" redirectPort="8443" enableLookups="false" protocol="AJP/1.3" URIEncoding="UTF-8"/>
JIRA / Tomcat server.xml
中不存在此行。查看Atlassian文档,我没有找到有关配置Confluence以与AJP一起使用的文档。但是,JIRA和AJP的文档存在。
我想也许可以添加&#34; <Connector port="8009" redirectPort="8443" enableLookups="false" protocol="AJP/1.3" URIEncoding="UTF-8"/>
我的JIRA server.xml
会有所帮助。 Confluence仍然没有问题,但我仍然获得了JIRA登录页面。
我在这里缺少什么?
编辑
看一些其他网站,看起来当人们有多个应用程序运行时,他们在不同的端口上运行它们的AJP配置?
JIRA配置为8009
。基于此我为8109
配置了Confluence。现在当我尝试加载wiki.thelavender.net
时,我得到一个空白页面。
告诉other_vhosts_access.log
我现在似乎收到了HTTP 404错误:GET / HTTP/1.1" 404
。整行是:
wiki.thelavender.net:80 xxx.xxx.xxx.xxx - - [23/Jul/2016:15:23:01 -0500] "GET / HTTP/1.1" 404 170 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13F69 Safari/601.1"
最终更新
好的,所以我进去编辑了我的虚拟主机文件。
我改变了:
ProxyPass / ajp://thelavender.net:8109/
ProxyPassReverse / ajp://thelavender.net:8109/
到
ProxyPass / ajp://thelavender.net:8109/wiki
ProxyPassReverse / ajp://thelavender.net:8109/wiki
重新启动Confluence,现在我可以转到wiki.thelavender.net
当然,一切都在/ wiki背后提供,但它确实有效。我没有使用/wiki
时出现404错误的具体原因是什么?
答案 0 :(得分:0)
您的confluence的上下文路径设置为/ wiki,因此您必须通过以/ wiki结尾的URL访问它。
您没有在/处提供任何内容,因此返回404(未找到)。
如果您不想将/ wiki用作上下文路径,则this KB article会说明如何更新它。