【发布时间】:2014-10-30 22:32:01
【问题描述】:
目前我的 htaccess 代码是
#add www
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
#send all traffic to https
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
输入以下网址时有效
1. https://example.com -> https://www.example.com 2. http://example.com -> https://www.example.com 3. http://www.example.com -> https://www.example.com 4. https://example.com -> https://www.example.com 5. https://example.com/somepage -> https://www.example.com/somepage 6. http://www.example.com/somepage -> https://www.example.com/somepage但是当 https 和 www 在尝试访问某些页面时不存在时它不起作用,而是重定向到奇怪的 url
7. http://example.com/somepage -> https://www.example.com/https://example.com/somepage【问题讨论】:
-
如果您输入 example.com (或将 example.com 复制粘贴到打开到其他 https 地址的选项卡)则不起作用,这是正确答案:stackoverflow.com/a/2097565/3198388
标签: apache .htaccess mod-rewrite redirect url-rewriting