Apacheredirect规则不正确处理

考虑这个代码:

RewriteEngine On RewriteRule ^$ http://%{HTTP_HOST}:8177/index.jsp [C] RewriteRule ^http://([^:]+):([^/]+)(.*) http://$1:8177$3 [R=301] RewriteRule ^/$ http://%{HTTP_HOST}:8177/index.jsp [C] RewriteRule ^http://([^:]+):([^/]+)(.*) http://$1:8177$3 [R=301] RewriteCond %{REQUEST_URI} card.* RewriteRule ^ - [L] RewriteCond %{REQUEST_URI} Voucher.* RewriteRule ^ - [L] RewriteRule ^(.*)$ http://www.mymainwebsie.com [R,L] 

网站上的服务器configuration分为两部分。 1具有静态内容而另一个具有dynamic内容。 静态内容存储在apache服务器(2.2版本)中,dynamic内容存储在weblogic服务器(10.3)中。 每个请求都由web服务器(apache)处理。 它在内部根据文件夹名称决定请求是否由apache服务器或weblogic服务。

问题: – 我有这样的要求,上面目录中的文件不需要redirect,剩下的所有文件将被redirect到http://www.mymainwebsie.com 。

问题是使用上述规则我能够防止文件www.example.com/info/card/index.jspredirect。 但是…像图片,javscript,css请求的所有内部请求都不会被阻止。 所有这些内部请求都被redirect到http://www.mymainwebsie.com ,这不应该发生。

我需要的是一旦任何url匹配上述模式收到不应该有任何redirect。

注意: – 重写规则被写入.conf文件而不是在.htaccess文件中。