搜索网址中的特殊字符

时间:2016-09-12 10:12:53

标签: php .htaccess mod-rewrite

我使用搜索引擎友好的网址为我的网站创建了一个搜索表单。

我的网站每个页面都有以下表单代码:

<form class="form" method="get" id="searchform" action="searchrd">
Search

这也是我的htaccess文件:`

RewriteCond %{QUERY_STRING} ^query=([^&]+)$ [NC]
RewriteRule ^searchrd/?$ /musique/%1.html? [R=301,L,NC,NE]

RewriteRule ^/?musique/([^&]+).html?$ musique.php?query=$1 [NC,L,QSA]

我的问题如下:

当用户使用斜杠或&amp;搜索查询时例如,它给我一个404错误。我想要斜线和&amp;要删除以进行工作搜索。我怎么解决这个问题?我认为它可能与正则表达式有关。

1 个答案:

答案 0 :(得分:0)

尝试[B]标志

RewriteRule ^/?musique/([^&]+).html?$ musique.php?query=$1 [NC,L,QSA,B]
  

[B]标志指示RewriteRule转义非字母数字   应用转换前的字符。