0

我遇到了查询字符串的问题,尽管我不确定我尝试做的事情是否可行。

我有以下带有搜索查询的网址:subdomain.mysite.com/search/?search=searchquery

但我需要它重定向到以下网址,包括查询字符串:
subdomain.mysite.com/search/ ?rs=searchquery

我想知道这是否可以通过 mod_rewrite 实现?

我尝试了以下方法:

RewriteCond %{REQUEST_URI}  ^/search/?$
RewriteCond %{QUERY_STRING} ^search=([0-9]*)$
RewriteRule ^(.*)$ http://subdomain.mysite.com/search/?rs=% [L,R=301]

我不知道我的语法是否不正确,或者我只是在吠叫错误的树。任何帮助都是极好的。

这是我的 HTAccess 文件的开始 - 这是一个 Wordpress 站点,其重写规则由用户提供:Amine Hajyoussef:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{REQUEST_URI}  ^/search/?$
RewriteCond %{QUERY_STRING} ^search=([^&]*)$
RewriteRule ^(.*)$ /search/?rs=%1 [L,R=301]
</IfModule>

不幸的是,这似乎不起作用?有任何想法吗?

4

1 回答 1

0

你忘了1后面%,我也改变了搜索字符串,所以它可以是任何东西而不仅仅是数字。

RewriteCond %{REQUEST_URI}  ^/search/?$
RewriteCond %{QUERY_STRING} ^search=([^&]*)$
RewriteRule ^(.*)$ /search/?rs=%1 [L,R=301]
于 2013-07-03T14:20:50.633 回答