使用htaccess Im执行301重定向将旧url重定向到新url,问题是url包含存储在db中的id。但是我有一个具有新I的新数据库,所以现在当旧的url重定向到新的url时,页面上会加载不同的记录。所以我所做的就是存储旧的id和新的id,这样我就知道旧id属于新id了。但是,如何检测到有人试图访问旧的url呢?是否有一种在php中检测到通过301重定向到页面的人的方法?我不想添加任何新的网址,因为SEO的原因,所以我真的需要知道,如果我可以检测他们是否通过301重定向到这个页面。希望这是有意义的。
发布于 2012-12-08 19:54:38
向重定向(如redirect=true )中添加另一个参数,检查param以让应用程序知道它是重定向,启动会话,然后再重定向到最终的未更改的url,比较会话以了解用户是否来自重定向url。
或者按萨勒曼说的做,使用规范的url。
发布于 2012-12-08 19:51:38
脚本不会知道某些东西是否被重定向到它。而不是重定向,比方说,index.php?id=12345添加一个中间重定向,您可以确定正确的网址。
首先,使用临时变量名(例如.htaccess )重定向您的index.php?oldid=12345,然后在该脚本中执行以下操作:
if (isset($_POST['oldid'])) {
$id = fetch_new_id();
header("Location: index.php?id=$id");
}发布于 2012-12-08 19:53:13
我认为您无法检测已设置的http状态,但使用.htaccess,您可以添加额外的变量来重定向urls或将id重命名为另一个变量名。
https://stackoverflow.com/questions/13781228
复制相似问题