首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用php检测301重定向

如何使用php检测301重定向
EN

Stack Overflow用户
提问于 2012-12-08 19:47:23
回答 4查看 2.7K关注 0票数 1

可能重复: How to identify if referrer is a 301 redirect

使用htaccess Im执行301重定向将旧url重定向到新url,问题是url包含存储在db中的id。但是我有一个具有新I的新数据库,所以现在当旧的url重定向到新的url时,页面上会加载不同的记录。所以我所做的就是存储旧的id和新的id,这样我就知道旧id属于新id了。但是,如何检测到有人试图访问旧的url呢?是否有一种在php中检测到通过301重定向到页面的人的方法?我不想添加任何新的网址,因为SEO的原因,所以我真的需要知道,如果我可以检测他们是否通过301重定向到这个页面。希望这是有意义的。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-12-08 19:54:38

向重定向(如redirect=true )中添加另一个参数,检查param以让应用程序知道它是重定向,启动会话,然后再重定向到最终的未更改的url,比较会话以了解用户是否来自重定向url。

或者按萨勒曼说的做,使用规范的url。

票数 2
EN

Stack Overflow用户

发布于 2012-12-08 19:51:38

脚本不会知道某些东西是否被重定向到它。而不是重定向,比方说,index.php?id=12345添加一个中间重定向,您可以确定正确的网址。

首先,使用临时变量名(例如.htaccess )重定向您的index.php?oldid=12345,然后在该脚本中执行以下操作:

代码语言:javascript
运行
复制
if (isset($_POST['oldid'])) {
    $id = fetch_new_id();
    header("Location: index.php?id=$id");
}
票数 0
EN

Stack Overflow用户

发布于 2012-12-08 19:53:13

我认为您无法检测已设置的http状态,但使用.htaccess,您可以添加额外的变量来重定向urls或将id重命名为另一个变量名。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13781228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档