我正在尝试使用 Apache 规则隐藏我的 Kallithea 后端服务器(这对于管理 Git/Mercurial 存储库很有用)地址。我有一个从https://sub.domain1.com/gitrepos到https://sub.domain2.com/的 URL 重定向。
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>
谢谢你的帮助。