可能重复:
一切你想知道Mod_Rewrite规则,但不敢问?
以下代码添加www。 到任何不以它开头的url:
RewriteCond %{HTTPS} !on [OR] RewriteCond %{HTTP_HOST} !^www\. RewriteCond %{HTTP_HOST} ^(www\.)?(.+) RewriteRule ^ https://www.%2%{REQUEST_URI} [L,R=301]
不过,我希望它只有当url的格式是这样的:
something.com
如果url是这样的:
something.something.com
我不希望添加www的规则。
我如何改变这个?
更改
RewriteCond %{HTTP_HOST} !^www\.
至:
RewriteCond %{HTTP_HOST} !(^www\.|\..+\.)
换句话说,改变你的条件从寻找“www”到寻找www 或寻找两个点。
尽pipe如此,考虑到问题描述,这也可能起作用,并且具有更简单的优点:
RewriteCond %{HTTP_HOST} !\..*\.
这个问题可能被描述得更好,因为“只用一个点重写任何主机就可以预先login”www。“。