.htaccess-强制除子域之外的https
我目前正在使用:.htaccess-强制除子域之外的https,.htaccess,internet-explorer,subdomain,.htaccess,Internet Explorer,Subdomain,我目前正在使用: RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} !=subdomain.domain.com RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 它似乎可以通过https加载我的主页,通过http加载我的子域,但只能在IE中加载。它在chrome或firefox中不起作用 当我进行此设置时: RewriteCond %{HTTPS} = off RewriteCond
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !=subdomain.domain.com
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
它似乎可以通过https加载我的主页,通过http加载我的子域,但只能在IE中加载。它在chrome或firefox中不起作用
当我进行此设置时:
RewriteCond %{HTTPS} = off
RewriteCond %{HTTP_HOST} !=subdomain.domain.com
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
它根本拒绝加载我的子域
有人能给我解释一下https=off和https之间的区别吗=在…上我做错了什么,阻止它在firefox和chrome中工作
有人能给我解释一下https=off和https之间的区别吗=在…上我做错了什么,阻止它在firefox和chrome中工作
%{HTTPS}=off
错误。Mod rewrite在解析其规则方面不是很聪明,因此当它看到=
和off
之间有一个空格时,它认为off
是重写条件标志,这会抛出一个错误,因为这不是一个有效的标志。您实际上不需要=
或=代码>素材:
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^subdomain\.domain\.com$ [NC]
足够好了,你的第一条规则也很好
RewriteCond %{HTTPS} !=on
及
及
及
都一样
这里的问题不是您的重写规则,而是您的服务器如何配置SSL或某些浏览器设置(或者您需要清除缓存)。非常感谢您的回复!它肯定澄清了我遇到的许多问题,多亏了你,我才得以工作!
RewriteCond %{HTTPS} !on
RewriteCond %{HTTPS} =off
RewriteCond %{HTTPS} off