【发布时间】:2014-04-16 22:42:07
【问题描述】:
我如何(使用 htaccess 文件)重定向如下所示的页面:
http://www.domain/page/?var=test&var2=test2
到看起来像这样的东西:
https://domain/page/?var=test&var2=test2
但是这样做只会影响这个页面而不影响其他任何东西吗?
【问题讨论】:
我如何(使用 htaccess 文件)重定向如下所示的页面:
http://www.domain/page/?var=test&var2=test2
到看起来像这样的东西:
https://domain/page/?var=test&var2=test2
但是这样做只会影响这个页面而不影响其他任何东西吗?
【问题讨论】:
这与this question 非常相似。你想要这样的东西:
# Redirect all HTTP traffic to HTTPS, but only if the requested page is /page
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^page/?$
RewriteRule ^(.*)$ https://domain.com/$1 [QSA]
【讨论】:
你需要一个[OR] 介于两个重写条件之间:
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteRule ^(page(?:/.*)?)$ https://domain.com/$1 [L,R=301,NE]
如果 HTTPS 关闭,这将重定向到 https://domain.com,否则如果您的主机名是 www.
【讨论】:
试试这个
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
【讨论】: