【发布时间】:2019-12-25 10:33:10
【问题描述】:
像“mydomain.com”这样没有“www”的主域的.htaccess 重定向不起作用,将地址留在普通的http://,那么这段代码有什么问题?以及如何强制将所有地址重定向到 https://?
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*) https://%1/$1 [R=301,L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1
【问题讨论】:
-
代码在哪里?您只重定向以
www开头的请求 -
我有一个处理请求的 index.php,我唯一的问题是只有 www 被重定向到 https,正如你所指出的那样,因为我对 htaccess 的了解真的很差,所以我坚持这样做问题,要重定向http,像这样的 %{HTTP_HOST} ^http.(.*) [NC] 存在吗?
-
你应该检查词汇表 ;)
HTTP_HOST包含主机。这可能以http开头,但这并不常见。通常它包含www.domain.com
标签: .htaccess http redirect https