我需要使用 .htaccess 从一个目录重定向到另一个保留查询字符串,因为我已将搜索目录从更改/global/search/
为/search/
重定向
localhost/site/global/search/index.php?keyword=hi&search=all
至
localhost/site/search/?keyword=hi&search=all
目录结构
wamp/www/site/global/search/index.php //for /global/ directory
wamp/www/site/search/index.php //for /search/ directory
我正在尝试这种方式
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^global/search(/?|/index.php?)$ /site/search/?$1 [QSA,R=301,L]
这是有效的,除了我进入index.php
查询字符串
重定向后我得到了这个网址。
http://localhost/site/search/?/index.php&keyword=hi&search=all
我希望这个网址像
http://localhost/site/search/?keyword=hi&search=all
请查看为什么 index.php 以重定向 url 作为查询字符串出现,并建议在没有 index.php 的情况下获取干净的查询字符串的方法