隐藏JIRA上下文路径

时间:2013-08-27 06:18:39

标签: apache url-rewriting jira reverse-proxy confluence

我们有一个小问题,我想在这里讨论。

我们有一台安装了JIRA和Confluence的虚拟机。 JIRA和Confluence在DNS列表中输入,因此用户只需在浏览器中输入“jira”或“confluence”即可到达服务器 - 已经完成的工作

我们将apache配置为将请求转发到httpd.conf中的两个不同的路径:

<VirtualHost *:80>
    ServerName crucible
    ServerAlias crucible
    RedirectPermanent / https://machine/crucible
  </VirtualHost>

  <VirtualHost *:80>
    ServerName confluence
    ServerAlias confluence
    RedirectPermanent / https://machine/confluence
</VirtualHost>

然后,我们为SSL通信配置了proxy_ajp - 还有所有功能

#JIRA
ProxyPass               /jira       ajp://jira:8009/jira
ProxyPassReverse        /jira       https://jira:8009/jira

#Confluence
ProxyPass               /confluence       ajp://confluence:8011/confluence
ProxyPassReverse        /confluence       https://confluence:8011/confluence

我们唯一的问题是URL显示了到页面的确切路径,这当然是正确的:

http://jira/jira/...
http://confluence/confluence/...

是否有可能或一个例子如何缩短网址以摆脱这些加倍的jiras和反对?

1 个答案:

答案 0 :(得分:0)

将第一个参数转换为代理指令到/,将尾部斜杠添加到第二个参数。您也可以在此时丢失重定向。

如果内容不受限制,则不能代理,您可以使用! ProxyPass手册中的语法,用于例外。

这将导致您删除重定向上的/ jira /。

如果您有野外的URL,您可能希望使用mod_rewrite以静默方式去除这些前缀,例如。

RewriteEngine ON
RewriteRule ^/(?:jira|crucible)(/.*) $1 [PT]