Php HTTP到HTTPS重定向问题
我想将http请求重定向到https节点 我试过了Php HTTP到HTTPS重定向问题,php,apache,https,Php,Apache,Https,我想将http请求重定向到https节点 我试过了 RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 请在下面找到我执行的几个测试结果 重定向到 //工作如期进行 未重定向到 //没有按预期工作 编辑:这是我的.htaccess文件 <IfModule mod_rewrite.c> <IfModule mod_negotiatio
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
请在下面找到我执行的几个测试结果
重定向到
//工作如期进行
未重定向到
//没有按预期工作
编辑:这是我的.htaccess
文件
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
#Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(api-docs|docs)($|/) - [L] # HERE IS THE PROBLEM I THINK
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# redirect all http -> https
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</IfModule>
选项-多视图
#选项+FollowSymLinks
重新启动发动机
重写规则^(api文档|文档)($|/)-[L]#我认为这就是问题所在
#重定向尾部斜杠。。。
重写规则^(.*)/$/$1[L,R=301]
#处理前控制器。。。
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^index.php[L]
#重定向所有http->https
重写cond%{HTTPS}!在…上
重写规则(*)https://%{HTTP\u HOST}%{REQUEST\u URI}
请告诉我如何实现或修复此问题。我成功地使用了以下规则,请注意正则表达式模式的差异
RewriteRule ^(.*)$ https://domainname/$1 [R,L]
ApacheWiki
我编辑了这个问题以包含.htaccess文件。请注意“这是我认为的问题”这句话。我用过这句话,但不适用于我的情况。我已编辑该问题以包含我的.htaccess
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R=301,L]