我在Wordpress网站上工作。当http版本重定向到https时,它会发出 302 Found 通知,如下所示:
curl -I http://www.example.com
HTTP/1.1 302 Found
Date: Mon, 27 Nov 2017 08:33:15 GMT
Server: Apache
Location: https://www.example.com/
Content-Type: text/html; charset=iso-8859-1
我无法弄清楚究竟是什么触发了这一点。 .htaccess文件包含以下内容:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
上面的前3行似乎没有任何区别,无论我保留还是删除它们。
cPanel&gt;中没有为http到https设置重定向。重定向或通过Wordpress中的重定向插件。
但是,开发网站是实际网站的精确副本并不存在此问题。当我在开发网站上使用 curl 时,它给了我 301 Moved Permanently ,这就是我在网站上的期望:
curl -I http://dev.example.com
HTTP/1.1 301 Moved Permanently
Date: Mon, 27 Nov 2017 08:41:53 GMT
Server: Apache
X-Pingback: http://dev.example.com/wordpress/xmlrpc.php
Expires: Mon, 27 Nov 2017 09:41:55 GMT
Cache-Control: max-age=3600
Location: https://dev.example.com/
Vary: User-Agent
Content-Type: text/html; charset=UTF-8
我不知道还有什么去看。该站点在VPS / Centos 7 / Apache中运行。任何帮助将不胜感激。
答案 0 :(得分:0)
我发现了问题所在。它位于httpd.conf文件中,其中包含另一个.conf文件。包含的.conf文件中包含Redirect
指令。当我评论它时,.htaccess中的RewriteRule
指令变为活动状态。