Apache重定向到干净的网址

时间:2015-11-19 19:26:36

标签: apache .htaccess redirect centos

我有一个带Apache / 2.2.15的centos webserver。在过去,我有像http://app.website.com/index.php?resource=Login这样的登录页面,现在我改变了我的网站,我想将此页面重定向到新页面。我在虚拟主机上试了这个重定向:

RedirectPermanent / https://newapp.website.com/

现在当我访问此页面http://app.website.com/index.php?resource=Login时,我被重定向到此页面http://newapp.website.com/index.php?resource=Login,我收到404。 但我想将我重定向到干净的网址,而没有“index.php?resource = Login”只是http://newapp.website.com/。我想解决这个问题,因为许多用户将登录页面加入书签,现在他们收到404错误。我不会改变网站,我需要在apache或.htaccess中使用解决方案。感谢

1 个答案:

答案 0 :(得分:1)

重定向指令将尾随路径查询字符串附加到其目标网址,尝试使用mod_rewrite解决此问题:

RewriteEngine On

RewriteCond %{THE_REQUEST} /index\.php\?resource=Login [NC]
RewriteRule ^  http://newapp.website.com/? [NC,L,R]

最后的空问号非常重要,因为它会从网址中丢弃原始查询字符串。