Apache反向代理配置SSL后无法正常跳转问题求助
Apache反向代理HTTPS配置缺失修复方案
核心问题
你的HTTPS虚拟主机存在两处关键配置遗漏:
- 未针对
unaeem-agile.xavor.com配置反向代理规则,导致根路径加载Apache默认页面; - 未传递HTTPS相关请求头,后端应用收到的请求协议为HTTP,因此重定向回HTTP地址。
需补充的配置步骤
1. 完善HTTPS虚拟主机配置
编辑你的443端口虚拟主机配置文件(通常位于/etc/apache2/sites-available/目录,例如unaeem-agile-ssl.conf),添加以下完整配置:
<VirtualHost *:443> ServerName unaeem-agile.xavor.com # SSL证书配置(替换为你的证书路径) SSLEngine on SSLCertificateFile /path/to/your/certificate.crt SSLCertificateKeyFile /path/to/your/private.key SSLCertificateChainFile /path/to/your/chain.crt # 如有证书链需添加 # 反向代理规则 ProxyPass /Agile http://unaeem-test.xavor.com/Agile ProxyPassReverse /Agile http://unaeem-test.xavor.com/Agile # 传递HTTPS协议标识头,避免后端重定向到HTTP RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443" # 可选:根路径自动跳转至/Agile(按需启用) RedirectMatch ^/$ /Agile </VirtualHost>
2. 启用必要的Apache模块
执行以下命令启用SSL、反向代理及请求头相关模块:
sudo a2enmod ssl proxy proxy_http headers
3. 禁用默认HTTPS虚拟主机
若默认的default-ssl.conf仍处于启用状态,会抢占根路径请求,需禁用:
sudo a2dissite default-ssl.conf
4. 重启Apache服务生效配置
sudo systemctl restart apache2
关键说明
X-Forwarded-Proto和X-Forwarded-Port头用于告知后端应用当前请求的实际协议是HTTPS,防止后端返回HTTP重定向响应;- 若希望访问
https://unaeem-agile.xavor.com直接跳转到应用,保留RedirectMatch ^/$ /Agile规则即可。
内容的提问来源于stack exchange,提问作者Usman
相关产品推荐
相关产品推荐

