我有一台运行 Apache 的 OS X 服务器,提供www.mydomain.be
我也在 上独立运行 Jira www.mydomain.be:8080
,并且我希望能够通过 访问 Jira jira.mydomain.be
。
为了实现这一点,我添加了:
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} jira.mydomain.be
RewriteRule ^/(.*)$ http://localhost:8080/$1 [P,QSA,L]
</IfModule>
当我浏览时,jira.mydomain.com
它会重定向我但不使用代理。这就是为什么我进入http://localhost:8080
我的地址栏...
有什么建议吗?
我将上述内容附加到 下的默认站点配置中/etc/apache2/sites
。
答案1
<VirtualHost *:80>
ServerAdmin root@localhost
DocumentRoot /var/www/html/
ServerName jira.mydomain.be
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>
答案2
不要使用重写规则来代理;只需使用特定的ProxyPass
和来代理到 Jira 实例。ProxyPassReverse
NameVirtualHost
我脑海中浮现的例子:
<VirtualHost *:80>
ServerName jira.mydomain.be
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>