301重定向到一个新的url,然后悄悄地重定向回来隐藏一个丑陋的url



我刚刚更改了url方案,所以example.com/ugly现在是example.com/nice

example.com/ugly仍然处理请求- .htaccess有以下规则:

RewriteRule ^nice$ example.com/ugly [PT,L,QSA]

This much works.

现在我想重定向example.com/ugly到example.com/nice,但仍然有example.com/ugly处理请求。像这样:

  1. 将example.com/ugly重定向到example.com/nice (301)
  2. 内部重定向example.com/nice到example.com/ugly,不让用户知道,不重复步骤1

这样做的简单方法当然会导致循环。有没有办法做到这一点与。htaccess?如果不行,还有别的办法吗?

我知道的最好的方法是在目标文件中使用PHP。以下是您想要添加的内容:

if($_SERVER['REQUEST_URI'] == '/index.php') header("Location: http://".$_SERVER['HTTP_HOST']."/");

显然,您需要在那里添加一些其他变量来处理任何请求,但这是基本的想法。

最新更新