我正在使用以下 .htaccess 重定向example.com or www.example.com
到http://www.example.com
。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
如果地址是 example.com/login,我想重定向到 https 而不是 http。该怎么做?
谢谢。
答案1
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
# check if https if off and check if the requested uri ends with login
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} login$
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
答案2
RewriteRule ^login https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
答案3
您可以通过在 .htaccess 文件中写入这些行来强制用户通过安全套接字层 (SSL) 浏览您的网站。
Engine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.website.com/$1 [R]
话虽如此,你必须创建一些证书,并进行一些其他操作来处理它,否则每次你尝试连接时,都会出现难看的 107 错误(net::ERR_SSL_PROTOCOL_ERROR) : Error with SSL protocol
。只需在 Google 上搜索“如何制作服务器 https”,就会出现一堆相关结果。