mod_rewrite和conditions - 查询字符串上的“if”

时间:2013-04-25 18:36:50

标签: php mod-rewrite

我是新手,但过去几天一直在研究.htaccess mod_rewrite,我终于绕过它了。我想知道是否有可能进行简单的检查以查看查询字符串是否等于特定的东西..例如:

#First check
RewriteCond $1 !^(img|font|js|css|scripts) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l

#if $2 is upgrade, use this ReWrite
RewriteCond %{QUERY_STRING} $2=upgrade
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ index.php?page=$1&subpage=upgrade&tool=$2 [QSA,L]

#If not found... Use this regular ReWrite
RewriteCond $1 !^(img|font|js|css|scripts) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ index.php?page=$1&user=$2 [QSA,L]

我已经搜索了条件等,但是在编写这样一个声明的可能性上没有真正出现“是或否”,尽管我发现了类似的方面(找到on stackoverflow here),如:

RewriteCond %{QUERY_STRING} (^|&)user=upgrade(&|$) [NC]
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ index.php?page=$1&user=upgrade&tool=$2 [L]

无法让它发挥作用。

0 个答案:

没有答案