此.htaccess
文件在我的/ public_html /文件夹中:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>
这个.htaccess
在我的/ public_html / public /文件夹中
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
我需要添加如下规则:
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
我遇到了重定向过多次的问题。
我仍然需要使用公用文件夹作为我的根目录,并且仍要使用/ public /中的前端控制器,但我想将所有流量定向到https。
有人可以帮我了解如何解决吗?
是否需要更改与/ public /文件夹有关的重写规则?
答案 0 :(得分:0)
在http->https
文件夹的.htaccess
中添加/public_html/public/
规则:
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteRule (.*) https://%{HTTP_HOST}/$0 [R=301,NE,L]
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
确保在新的浏览器中进行测试或完全清除浏览器缓存。