使用 Apache2 作为反向代理重定向到 URI

使用 Apache2 作为反向代理重定向到 URI

我正在使用 Apache2 运行反向代理,并且配置了以下 vHost:

<VirtualHost *:80>
        ServerName rds.example.com
        Redirect / https://rds.example.com/RDWeb/
</VirtualHost>
<VirtualHost *:443>
        # Proxy
        ServerName rds.example.com
        ProxyPreserveHost on
        SSLProxyEngine on
        SSLProxyVerify off
        SSLProxyCheckPeerCN off
        SSLProxyCheckPeerName off
        SSLProxyCheckPeerExpire off
        ProxyPass / https://backend01.example.com/
        ProxyPassReverse / https://backend01.example.com/
SSLCertificateFile /etc/letsencrypt/live/rds.example.com//fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/rds.example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

当客户端连接到http://rds.example.com或者https://rds.example.com,我想将他重定向到https.//rds.example.com/RDWeb(微软默认的远程桌面Web服务)。

实际上,当客户端连接时,他只会被重定向到https://rds.example.com拥有漂亮的IIS页面。

我究竟做错了什么 ?

答案1

您可以使用mod_rewrite它来重定向到您想要的位置 - 将其集成到 SSL vhost 中:

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/$
RewriteRule .* /RDWeb/ [R,L]

不要忘记启用 mod_rewrite(a2enmod如果可能的话请使用)。

相关内容