使用.htaccess从https://重定向到https:// www

时间:2014-09-10 08:53:47

标签: apache .htaccess http redirect https

无论URL如何输入浏览器,我都试图让我的网站将所有流量重定向到https://www.mylittleblackebook.com。有人可以通过六种方式将URL键入浏览器。他们是:

  1. https://www.mylittleblackebook.com
  2. https://mylittleblackebook.com
  3. http://www.mylittleblackebook.com
  4. http://mylittleblackebook.com
  5. www.mylittleblackebook.com
  6. mylittleblackebook.com
  7. 所有这些网址都将起作用 EXCEPT FOR 第二个。我无法将.htaccess文件重定向到https:/mylittleblackebook.com到https://www.mylittleblackebook.com。这是我的.htaccess文件中的代码:

    RewriteEngine on
    
    # require SSL without mod_ssl
    RewriteCond %{HTTP_HOST} !^www\.
    RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    RewriteCond %{HTTPS} !on
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    

    此代码适用于6种方式中的5种。谁能告诉我如何让它为所有人工作?

    感谢您抽出宝贵时间仔细阅读。

1 个答案:

答案 0 :(得分:0)

您的代码看起来正确,不确定为什么不起作用。我会改用相反的顺序,但又有些不同:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/?(.*) https://www.%{HTTP_HOST}/$1 [L,R,NE]