我们有一个 Apache 网站,其中某些部分由 JBoss 提供支持。问题是,我们如何让 Apache 强制将所有 HTTP 请求重定向到 HTTPS 等效项?
在我们的旧服务器(CentOS 4、Apache 2.0、mod_jk)上,我们有以下配置:
<VirtualHost 1.2.3.4:80>
Redirect / https://www.foo.com/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
这很好用——任何对 PHP、vanilla HTML 或 JBoss 驱动的网页的请求都会被重定向。但是,在我们的新服务器(CentOS 5、Apache 2.2、mod_proxy_ajp)上,相同的配置仅适用于普通页面——不适用于使用 AJP 发送到 JBoss 的任何内容。
我还尝试了以下内容,我在http://www.webmasterworld.com/apache/3050511.htm找到了它:
<Proxy *>
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</Proxy>
Run Code Online (Sandbox Code Playgroud)
但仍然没有运气。我觉得我错过了一些明显的东西。有什么帮助吗?
PS我无论如何都不是Apache专家。如果这是一个初学者问题,我深表歉意:-P。