我已经重写cond,就像这样
RewriteCond %{HTTP_HOST} !^bamse\.ba$ [NC]
RewriteRule ^(.*)$ http://bamse.ba/$1 [R=301,L]
我发现代码在互联网的某个地方,我还没有自己编写。 它的作用是将我所有的子域名重定向到www.bamse.ba,hello.bamse.ba到bamse.ba。
公平的。这是正常的,因为它应该但问题是我使用timthumb.php脚本,它加载来自images.anka.com的所有图像
现在的问题是,如果我启用了重写规则,我的所有图像都是从bamse.ba而不是images.anka.com
加载的。我如何排除域images.anka.com它不是重写规则的一部分。 有什么想法吗?
答案 0 :(得分:4)
严格地说,答案已经在你的问题中了。如果您查看第一个RewriteCond
,您会发现它会将%{HTTP_HOST}
与!^bamse\.ba$
进行比较。 !
取消了结果,因此只有当%{HTTP_HOST}
等于bamse.ba
时,此部分才会生效。这听起来与我们想要在这里完成的事情非常相似。要排除images.bamse.ba
,我们只需要添加另一个RewriteCond
。
RewriteCond %{HTTP_HOST} !^images\.bamse\.ba$ [NC]
RewriteCond %{HTTP_HOST} !^bamse\.ba$ [NC]
RewriteRule ^(.*)$ http://bamse.ba/$1 [R=301,L]
在可见任何更改之前,您可能需要清除缓存。为了提高效率,浏览器可以缓存像这样的永久重定向,跳过一个或多个请求到服务器。