HTTPS到HTTP的问题htaccess
问题描述:
我遇到一些.htaccess重定向的问题,只能在某些情况下使用。HTTPS到HTTP的问题htaccess
我的代码是
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
这里是我的测试
https://www.example.com结果重定向到http://example.com
https://example.com什么都不做
https://www.example.com/page-name重定向到http://example.com/page-name
https://example.com/page-name什么都不做
这是一个WordPress站点和的.htaccess代码坐在上面的WordPress的代码。我也试了一下下面也和我得到相同的结果
答
它看起来像没有必须的SSL attatched到它,因此
RewriteCond %{HTTPS} on
规则是无法正常工作的网站。
正因为如此我去了这个方法来修复重定向并使其在所有的,我在问题中提到的测试用例工作。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
答
使用此在您的.htaccess
代替:
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://example.com%{REQUEST_URI} [R,L]
我假设你想www
被迫不显示,因为你没有包括在URL中。如果是这样的话,包括这个额外的条件,迫使它没有显示:
RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://example.com%{REQUEST_URI} [R,L]
测试此之前,请务必清除缓存。
不幸的是这没有工作。我认为网站上缺乏SSL是一个问题。 –