如果域名不是,我想重定向.htaccess:
RewriteCond %{HTTP_HOST} !^(www.)?domain.tld [NC]
RewriteRule ^(.*)$ https://domain.tld/ [L,R=301,QSD]
这是对的吗?
答案 0 :(得分:1)
您还应该使用$1
将分组作为反向引用传递,或使用%{REQUEST_URI}
变量:
RewriteCond %{HTTP_HOST} !^(www.)?domain.tld [NC]
RewriteRule ^(.*)$ https://domain.tld/$1 [L,R=301,QSD]
或
RewriteCond %{HTTP_HOST} !^(www.)?domain.tld [NC]
RewriteRule ^(.*)$ https://domain.tld%{REQUEST_URI} [L,R=301,QSD]
请注意QSD
是一个apache 2.4重写标志,它不适用于apache 2.2。如果您正在使用apache 2.2并想要删除查询字符串,只需在目标末尾添加?
:
RewriteRule ^(.*)$ https://domain.tld/$1? [L,R=301,QSD]