我当前的 .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]
但它不起作用。我错过了什么?
最佳答案
也许这是可行的
我想你忘了把 RewriteCond %{HTTPS} !on
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
关于.htaccess - 修改我的 htaccess 以重定向到 SSL URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53563233/