【问题标题】:Website somehow lost "force www removal"网站不知何故丢失了“强制 www 删除”
【发布时间】:2018-04-25 10:50:33
【问题描述】:

我的网站曾经有“强制 SSL”和“强制删除 www”。但现在它失去了“强制 www 删除”。为了更清楚,现在是“强制 www”。

我的.htaccess中的相关代码是

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

我根本没有更改上面的代码。我联系了我的虚拟主机公司,他们说问题出在 .htaccess 中。

如果我必须指出一个可能的原因,可能是(我的虚拟主机公司的)支持人员帮助我更改了我的 PHP 版本。这可能就是为什么在我的 .htaccess 开头添加了两行:

# Use PHP56 Single php.ini as default
AddHandler application/x-httpd-php56s .php

但我不确定这是否真的是原因。

【问题讨论】:

    标签: .htaccess ssl url-rewriting


    【解决方案1】:

    您的代码添加 www。改为使用:

    RewriteEngine On
    RewriteBase /
    
    RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
    RewriteRule ^ https://%1%{REQUEST_URI} [NE,L,R=301]
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
    

    【讨论】:

    • 谢谢!现在所有页面都可以正常工作。我真的不知道为什么旧代码突然停止工作。我根本没有改变它们。无论如何,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多