htaccess文件没有重定向某个url

时间:2017-12-23 21:36:53

标签: .htaccess ssl redirect

我在我的网站上添加了SSL,并使用以下htaccess文件进行重定向:

 <IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{HTTPS}        =off   [OR]
 RewriteCond %{HTTP_HOST}    !^example\.com$
 RewriteRule ^(.*)$          "https://example.com/$1" [R=301,L]
 </IfModule>

这几乎涵盖了所有内容,因此http://www.example.comhttp://example.com和example.com都转发到https://example.com。但是,有一种情况没有。如果我输入https://www.example.com,则不会重定向到https://example.com,我会收到安全证书错误。寻找解决方案。提前谢谢。

cdr6545

1 个答案:

答案 0 :(得分:0)

试试这个

<IfModule mod_rewrite.c>
    RewriteEngine On
    Options +FollowSymlinks
  # To redirect from www to non www (Rewrite www.example.com → example.com)
    RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
    RewriteRule ^(.*) http%{ENV:protossl}://%1/$1 [R=301,NE,L]

  # Redirect HTTP to HTTPS automatically (only if not in localhost)
    RewriteCond %{HTTP_HOST} !=localhost
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>