使用htaccess规则表单提交错误

时间:2014-04-23 04:56:01

标签: forms .htaccess redirect

我在主页index.php上有表单,它在提交url看起来后将变量传递给页面search.php 的 justdlal.com/search/Computer-Hardware/Delhi

在同一页面中,我有两个输入城市和关键字的相同形式,但提交后必须转到类似
的网址 的 justdlal.com/search/laptop/Delhi
但它改为将搜索查询附加到当前网址 的 justdlal.com/search/Computer-Hardware/search.php?keyword=laptop&city=Delhi

我的htaccess代码

RewriteEngine on
RewriteBase /
RewriteRule "^(search)/([^+]*)\++([^+]*\+.*)$" /$1/$2-$3 [L,NC]
RewriteRule "^(search)/([^+]*)\+([^+]*)$" /$1/$2-$3 [L,R=301,NE,NC]

RewriteCond %{THE_REQUEST} \s/+search\.php\?keyword=([^&]+)&city=([^\s&]+) [NC]
RewriteRule ^ /search/%1/%2? [R=301,L,NE]

RewriteRule ^search/([\w-]+)/([\w-]+)/?$ /search.php?keyword=$1&city=$2 [L,QSA]

1 个答案:

答案 0 :(得分:0)

请尝试以下规则:

RewriteEngine on
RewriteBase /
RewriteRule "^(search)/([^+]*)\++([^+]*\+.*)$" /$1/$2-$3 [L,NC]
RewriteRule "^(search)/([^+]*)\+([^+]*)$" /$1/$2-$3 [L,R=301,NE,NC]

RewriteCond %{THE_REQUEST} /search\.php\?keyword=([^&]+)&city=([^\s&]+) [NC]
RewriteRule ^ /search/%1/%2? [R=301,L,NE]

RewriteRule ^search/([\w-]+)/([\w-]+)/?$ /search.php?keyword=$1&city=$2 [L,QSA]