如果我有以下RewriteRule而没有任何其他RewriteRule定义
RewriteRule ^de/(var)/(.+) /$1/$2 [NC,L]
然后一切正常
但是当我在.htaccess文件中有以下RewriteRule时
RewriteRule .* index.php [L]
然后第一个RewriteRule不起作用。
答案 0 :(得分:0)
我相信这是你应该遵守这两条规则的方式:
RewriteRule ^de/(var)/(.+)$ /$1/$2 [NC,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/de/var/ [NC]
RewriteRule ^ index.php [L]
答案 1 :(得分:0)
以下解决方案应该可以解决您的问题。
如果您提供有关规则意图的详细信息,则可以提供更好的解决方案。
RewriteEngine On
RewriteBase /
RewriteRule ^de/(var)/(.+) /$1/$2 [NC,L]
#prevent internal redirects
RewriteCond %{ENV:REDIRECT_STATUS} !200
RewriteRule .* index.php [L]