因此,我需要将HTTP协议重定向到https,我的SSL已启用并且可以正常工作,但是问题是:每当我输入HTTP URL时,都会重定向到我站点的index.php页面。
这是我的代码:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# add trailing slash to directories and force SSL
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_URI} !(/$)
RewriteCond %{SERVER_PORT} 80
RewriteRule (.*) https://example.com/$1/ [R=301,L]
# And for the files
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
答案 0 :(得分:0)
根据Apache2 documentation,您可以通过以下方式简化虚拟主机:
<VirtualHost *:80>
ServerName www.example.com
Redirect Permanent/ https://www.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
DocumentRoot /usr/local/apache2/htdocs
SSLEngine On
//ALL Your specifics configurations here
</VirtualHost>
这可让您将端口 80 上的每个请求重定向到 https 。 因此,您只需在 443 的虚拟主机中配置自己的目录索引即可。
希望获得帮助。