.htaccess htaccess中的问号
我试图让搜索结果的url看起来像谷歌 site.com/search?q=blabla 试过这个.htaccess htaccess中的问号,.htaccess,.htaccess,我试图让搜索结果的url看起来像谷歌 site.com/search?q=blabla 试过这个 RewriteRule ^search\?q=(.*)$ index.php?q=$1 就在?之前,我使用了\,但它仍然不起作用,问题出在问号上。正确的方法是什么?试试这个,我可以用它来代替: example.com/search.php?q=hello 与: example.com/search/hello/ 代码是: RewriteCond /%{REQUEST_FILENAME}.php -
RewriteRule ^search\?q=(.*)$ index.php?q=$1
就在
?
之前,我使用了\
,但它仍然不起作用,问题出在问号上。正确的方法是什么?试试这个,我可以用它来代替:
example.com/search.php?q=hello
与:
example.com/search/hello/
代码是:
RewriteCond /%{REQUEST_FILENAME}.php -f
RewriteRule ^search/?q=([a-zA-Z0-9-]+)$ /$1.php?q=$2`
您只需在root.htaccess中使用以下简单规则:
RewriteEngine On
RewriteBase /
RewriteRule ^search/?$ index.php [L,QSA,NC]
查询字符串
?q=foobar
将自动转入index.php
您可以使用RewriteCond
捕获查询字符串。请参阅或。但在这种情况下,您可以不使用查询字符串,将search/
重写为index.php
。OP希望URL为site.com/search?q=blablabla
。编辑后,尝试上面的方法。我认为您无法捕获这样的查询字符串。