我有一个让我困惑的问题。我的 .htaccess 文件中有两条规则,一条应处理对一个 url 路径的请求,另一条应处理另一条路径的请求。第二条规则比第一条更普遍。我期待第一个捕获它的实例并且 [L] 停止规则处理,但是一切都落入第二个规则并被定向到错误的页面。不应该在适用的情况下应用第一条规则,然后停止规则处理吗?
以下是它们出现的两条规则:
## Path 1 ##
RewriteCond %{REQUEST_URI} ^directory/.*-([0-9]+)/?$
RewriteRule ^directory/.*-([0-9]+)/?$ directory/page.php?id=$1 [L]
## Path 2 ##
RewriteCond %{REQUEST_URI} ^.*-([0-9]+)/?$
RewriteRule ^.*-([0-9]+)/$ page.php?id=$1 [L]
也许我遗漏了一些明显的东西,但据我所知,第一条规则(如果满足条件)将被应用,然后规则处理将停止。
任何帮助将不胜感激。
谢谢