1

网站上一些不可更改的超链接指向/folderA/index.php?id=somestuff. 我需要将请求重定向到/folderB/index.php?id=somestuff

我对此做了一些试验,但我无法让它工作,感谢任何帮助。

RewriteEngine on
RewriteRule /folderA/index\.php\?id=([\w-]+)$ /folderB/index.php?id=$1
4

2 回答 2

1

请记住,RewriteRule 不匹配查询字符串,并且只匹配没有它的 REQUEST_URI。请改用此代码:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+folderA/(index\.php\?id=[^&\s]+) [NC]
RewriteRule ^ /folderB/%1 [R=302,L]
于 2013-06-05T12:04:58.927 回答
1

假设您不打算使用不同的 get 请求,这应该可行:

RewriteEngine on
RewriteRule /folderA/index\.php\?id=(.*?)$ /folderB/index.php?id=$1
于 2013-06-05T11:32:04.410 回答