近期有themebetter主题用户遇到一个问题:搜索中文的时候就404,英文和数字可以搜索。
这个问题我们首先想到的原因就是中文导致了搜索失效,换言之:服务器无法正确解析网址中的中文字符。一般情况下,windows服务器会出现这个问题。
尝试过的办法
遇到这个问题后,搜索出来几个常见的解决方法,大都是修改 class-wp.php 文件中的一些代码让其进行中文正确转码,很遗憾,这些教程无一例外的不起作用。一阵折腾后,通过修改伪静态文件解决了这个问题,以下是解决办法。
解决办法:修改网站根目录下的伪静态文件 .htaccess
将原有的规则
RewriteRule ^(.*)$ index.php?$1 [L]
改成
RewriteRule ^(.*)$ index.php?$1 [QSA,NU,PT,L]