.htaccess contineu如果未满足重定向规则

时间:2018-05-10 19:48:23

标签: .htaccess

我正在创建一个我想重写子目录的网站,但它可能是两种可能的结果。

RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ pages/$2.php?state=$1 [NC,L]

RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ index_agent.php?state=$1&city=$2 [NC,L]

该页面可以是site.com/state/contact-us或site.com/state/city,首先检查第一条规则。如果页面存在,上面的代码适用于第一条规则,但如果页面不退出,则不会转到第二条规则。

1 个答案:

答案 0 :(得分:0)

对于第一个规则,检查是否存在相应的.php文件:

RewriteCond %{DOCUMENT_ROOT}/pages/$2.php -f
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)/?$ pages/$2.php?state=$1 [QSA,L,NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)/?$ index_agent.php?state=$1&city=$2 [NC,QSA,L]