使用 mod_rewrite 和 https
Using mod_rewrite with https
我需要将所有请求从 sub.domain.com
重定向到 sub.domain.com/www
。
我已经在我的 .htaccess 中用这段代码完成了:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?sub\.domain\.com$
RewriteRule ^$ www/ [L]
当我通过 http 进入网站时,这工作正常,但当我通过 https 进入时,例如 https://sub.domain.com
,它一直将我重定向到 http。如何将 https 请求重定向到 https? (我尝试了 100 种解决方案,但没有任何效果)。
假设你只想要 https .. 你首先要强制将 http 请求发送到 https:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
然后继续您的常规重定向
RewriteCond %{HTTP_HOST} ^(www\.)?sub\.domain\.com$
RewriteRule ^$ www/ [L]
问题解决:我没有提到子域上的应用程序 运行 使用 Nette 框架,因为我认为它不相关。但显然 Nette 覆盖了 mod_rewrite 设置,因此必须在 Nette 本身中配置 https 的使用。
我需要将所有请求从 sub.domain.com
重定向到 sub.domain.com/www
。
我已经在我的 .htaccess 中用这段代码完成了:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?sub\.domain\.com$
RewriteRule ^$ www/ [L]
当我通过 http 进入网站时,这工作正常,但当我通过 https 进入时,例如 https://sub.domain.com
,它一直将我重定向到 http。如何将 https 请求重定向到 https? (我尝试了 100 种解决方案,但没有任何效果)。
假设你只想要 https .. 你首先要强制将 http 请求发送到 https:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
然后继续您的常规重定向
RewriteCond %{HTTP_HOST} ^(www\.)?sub\.domain\.com$
RewriteRule ^$ www/ [L]
问题解决:我没有提到子域上的应用程序 运行 使用 Nette 框架,因为我认为它不相关。但显然 Nette 覆盖了 mod_rewrite 设置,因此必须在 Nette 本身中配置 https 的使用。