使用Apache配置隐藏后端服务器地址

时间:2016-11-28 08:05:17

标签: apache url url-rewriting httpd.conf kallithea

我正在尝试使用Apache规则隐藏我的Kallithea后端服务器(这对管理Git / Mercurial存储库很有用)。我有一个从https://sub.domain1.com/gitreposhttps://sub.domain2.com/的网址重定向。

Atm,当我尝试访问https://sub.domain1.com/gitrepos/path/to/repo时,它会重定向到https://sub.domain2.com/path/to/repo

我正在寻找隐藏第二个服务器地址的方法。我想访问https://sub.domain1.com/gitrepos/path/to/repo而未明确重定向到https://sub.domain2.com/path/to/repo

我对Apache配置进行了一些尝试,但它无法正常工作,我不确定它是否可以在后端服务器端处理,或者是否可以在服务器上实际处理重定向。

这是我目前的配置:

<VirtualHost *:80>
        ServerName git-domain2.com
        ServerAlias git-domain2
        Redirect permanent / https://git-domain2.com/
</VirtualHost>


<VirtualHost *:443>
        ServerName git-domain2.com
        ServerAlias git-domain2

        <Proxy *>
          Require all granted
        </Proxy>

        ProxyPreserveHost On

        ProxyPass /gitrepos http://domain2.com:5000/ connectiontimeout=20 timeout=300
        ProxyPassReverse /gitrepos http://domain2.com:5000/

        #kallithea instance
        ProxyPass / http://domain2.com:5000/ connectiontimeout=20 timeout=300
        ProxyPassReverse / http://domain2.com:5000/

        #to enable https use line below
        SetEnvIf X-Url-Scheme https HTTPS=1
        #LogLevel warn
        SSLEngine on
        SSLProtocol all -SSLv2
        SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
        SSLCertificateFile /etc/pki/tls/certs/domain2.com.crt
        SSLCertificateKeyFile /etc/pki/tls/private/domain2.com.key
</VirtualHost>

感谢您的帮助。

0 个答案:

没有答案