2011-08-23 44 views
0

好文件的所有请求,我试图做到这一点:Apache的mod_rewrite的重定向未命名X这个域

重定向从另一台服务器加载特定文件类型的所有文件(除特殊例外),右现在,我使用这个重写规则:

RewriteEngine on 
RewriteRule \.(swf|jpg|png)$ http://example.com%{REQUEST_URI} [NC,R=302,L] 

它将所有的SWF,JPG或PNG文件重定向到另一个主机名来为他们服务。 那么,如何为特定文件的此规则添加例外?我试着添加:

RewriteCond %{REQUEST_URI} ^!(log22.swf|packer.swf|sos.swf|aeVisual.swf|newBubbleSystem.swf|e.swf)$ 

但我这样做时,它完全从所有其他文件做任何停止的规则。有任何想法吗?我是使用mod_rewrite的新手。

回答

1

你必须preprend !的条件的正则表达式:

RewriteCond %{REQUEST_URI} !^(log22.swf|packer.swf|sos.swf|aeVisual.swf|newBubbleSystem.swf|e.swf)$ 

注意!^在不同的顺序在你的代码,你可以否定的表达,但之前添加!

规则不起作用的原因是它永远不匹配。