【发布时间】:2019-05-02 22:41:36
【问题描述】:
我当前的.htaccess 看起来像这样:
Redirect 301 /~mysite-net/vlog http://www.example.net/vlog
Redirect 301 /~mysite-net/pp https://www.example.net/pp
Redirect 301 /~mysite-net/pp02 https://www.example.net/pp02
Redirect 301 /~mysite-net/pp03 https://www.example.net/pp03
Redirect 301 /~mysite-net/ http://www.example.net/
RewriteEngine On
RewriteRule ^([A-Za-z0-9]+).html$ https://www.example.net/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?(.*?)/?$ index.php?s=$1 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ index\.php\?s=([^\s]*)
RewriteRule ^/?(.*?)/?$ %1?%2%3 [L,R=301]
这符合预期,所以没问题。但是,现在我需要对其进行修改,以便它始终重定向到我网站的 SSL 版本。这意味着无论用户是否输入 http,它都会将他们重定向到 https。
所以我只是在底部添加了这些行:
RewriteCond %{HTTP_HOST} ^example\.net [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.net/$1 [R,L]
但它不起作用。我错过了什么?
【问题讨论】:
标签: .htaccess ssl mod-rewrite