我有以下重写:
RewriteRule ^api/(.*)? api/api.php [QSA,L]
因此,如果网址为http://www.test.com/api/ ...,则会将其重新路由到api文件夹中的文件api.php。这很有效。
但是,我想添加另一个规则,如果url是http://www.test.com/second_api/ ...将重新路由到api文件夹中的文件second_api.php。我没有那个工作。
RewriteRule ^second_api/(.*)? api/second_api.php [QSA,L]
RewriteRule (.*)/second_api/(.*)? api/second_api.php [QSA,L]
RewriteRule ^/second_api/(.*)? api/second_api.php [QSA,L]
要么是错误的网址,要么将其重新路由到api.php。我想用新添加的规则重新路由到second_api.php。
答案 0 :(得分:1)
您需要添加支票,否则您的第一条规则会再次应用:
RewriteCond %{REQUEST_URI} !second_api\.php
RewriteRule ^api/(.*)? api/api.php [QSA,L]
RewriteRule ^second_api/(.*)? api/second_api.php [QSA,L]