搜索表单Htaccess重写


Search Form Htaccess rewrite

我有一个htaccess规则不能很好地工作,它看起来不假设几乎所有的,如果我只放一个规则它工作得很好,问题是当我插入所有的,这是我的代码上面。

# Search Form Url Result
#search by category
RewriteRule ^jobs/([^/'.]+)$ jobs.php?Category=$1
#search by location
RewriteRule ^jobs/([^/'.]+)$ jobs.php?Location=$1
#search by category and location
RewriteRule ^jobs/([^/'.]+)/([^/'.]+)$ jobs.php?Category=$1&Location=$2

基本上每个规则适用于每种情况,例如,如果用户只搜索类别或位置,或者甚至搜索类别和位置。

你的Rule1Rule2使用相同的模式,即^jobs/([^/'.]+)$,所以只有1将工作。

您必须在/jobs/之后添加一个适当的标识符,以区分类别和位置uri。

你可以考虑:

# Search Form Url Result
#search by category
RewriteRule ^jobs/c/([^/.]+)/?$ jobs.php?Category=$1 [L,QSA]
#search by location
RewriteRule ^jobs/l/([^/.]+)/?$ jobs.php?Location=$1 [L,QSA]
#search by category and location
RewriteRule ^jobs/([^/.]+)/([^/.]+)/?$ jobs.php?Category=$1&Location=$2 [L,QSA]