我正在使用apache2.4&使用drupal 7配置网站。网站在80和80端口ssl在端口443上启用。 我已经通过网站管理员登录重定向主页到https但是在检查301重定向时它说URL是 应使用302临时重定向而不是此301永久重定向重定向,因为这是 考虑SEO友好的重定向方法。到目前为止我唯一使用的重定向是
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^(.*)$ https://www.domain.com/$1 [L,R=301,NC]
但它没有从http重定向到https。我甚至试过遵循规则
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www.domain\.com*
RewriteRule ^(.*)$ https://www.domain.com/$1 [L,R=301]
任何人都可以帮助我永久重定向。
答案 0 :(得分:0)
您的规则应该重定向。 检查您的代码是否位于htaccess之上。
此外,我想您要检查请求是否不在https上并与您的域匹配:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.domain\.com
RewriteRule (.*) https://www.domain.com%{REQUEST_URI} [L,R=301]
比htaccess更好的方法是取消我想的虚拟主机文件 - 所以网络服务器不需要reed htaccess: https://wiki.apache.org/httpd/RedirectSSL
<VirtualHost *:80>
ServerName www.example.com
Redirect permanent / https://secure.example.com/
</VirtualHost>