http 到 https 重定向 - apache2

http 到 https 重定向 - apache2

我有一个在 ubuntu16 服务器中运行的 odoo 实例。Apache 充当前端服务器,并将请求代理传递到 odoo 实例。我现在已经配置了虚拟主机以在前端 URL 上启用 SSL,它适用于以下 URL:https://example.com:8069https://www.example.com:8069

我需要实现的是,当有人访问 URL 时http://example.com:8069http://www.example.com:8069他们应该被重定向到https://example.com:8069

我无法使用 .htaccess 方法,因为应用程序没有它。此外,重定向参数无法在非 SSL 端口的虚拟主机中传递,因为没有非 SSL 端口(应用程序只启用了此 SSL 端口,其他网站已分配了默认端口。)虚拟主机条目如下:

<IfModule mod_ssl.c>
<VirtualHost *:8069>

ServerName example.com:8069
ServerAlias www.example.com:8069
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)(.*) [NC]
RewriteRule (.*) https://%2%{REQUEST_URI} [L,R=301]

SSLEngine on
SSLCertificateKeyFile /etc/apache2/sslsrp.com/example.key
SSLCertificateFile    /etc/apache2/sslsrp.com/example.crt
SSLCertificateChainFile /etc/apache2/sslsrp.com/example.txt

ProxyPreserveHost On
ProxyRequests Off

ProxyPass /longpolling/ http://localhost:8072/
ProxyPassReverse /longpolling/ http://localhost:8072/

ProxyPass / http://localhost:9069/
ProxyPassReverse / http://example.com:8069/

</VirtualHost>
</IfModule>

在 Apache 中这可能吗?

答案1

这个问题与这个或者这个或者这个。仍然不可能让 http 和 https 在同一端口上运行。

相关内容