gpt4 book ai didi

regex - 带有 .htaccess 和 mod-rewrite 匹配表达式的临时重定向 302

转载 作者:行者123 更新时间:2023-12-04 06:48:34 27 4
gpt4 key购买 nike

我正在尝试为我的网站匹配一堆重定向,基本上移动到服务器上的不同文件夹。我需要制作 http://www.site.com/index.php?page=anypage转至 http://www.site.com/newfolder/index.php?page=anypage .事情是http://www.site.com/index.phphttp://www.site.com/index.php?page=home应该保持不变。我怎样才能做到这一点?

我在 中尝试以下操作.htaccess 文件,但我怕犯错。我也真的不知道如何测试。

Options +FollowSymlinks
RewriteEngine on

RewriteRule ^/index.php?page=(.*)$ http://www.site.com/newfolder/index.php?page=$1 [R=302,NC]
RewriteRule ^/index.php?page=home http://www.site.com/index.php?page=home [R=302,NC,L]

现在我想这是暂时的,所以我应该知道如何扭转它!下周,链接将不得不再次重定向到根服务器。另外,我应该怎么做才能重新建立正常的重定向??

最佳答案

如果我正确地遵循了你的场景,你想要这样的东西:

RewriteEngine On

RewriteCond %{QUERY_STRING} !=""
RewriteCond %{QUERY_STRING} !page=home
RewriteRule ^index.php /newfolder/index.php [R,L]

就测试而言,我更喜欢在本地测试服务器上尝试排除规则。如果您可以完全控制服务器(就像本地情况一样),还有一些 mod_rewrite帮助您记录正在发生的事情的指令,这有助于调试。 The module documentation有更多关于这方面的信息。

编辑:当你想切换回来时,修改 RewriteRule上面像这样:
RewriteRule ^newfolder/index\.php /index.php [R,L]

关于regex - 带有 .htaccess 和 mod-rewrite 匹配表达式的临时重定向 302,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3441754/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com