PHP 是否可以知道用户是否已被 301 重定向到我的网站?
因此,在 myoldsite.com 中,我的 .htaccess 文件中有一个 301 重定向到 mynewsite.com。
我可以在 mynewsite.com 中放置一些 PHP 代码来识别用户何时被 301 重定向吗?如果是这种情况,我只需要它来显示特定消息。
非常感谢您的指点:-)
最佳答案
我相信通过 301 重定向 HTTP_REFERER
字段将包含原始引荐来源网址:
- 用户在地址栏中输入 oldsite.com,301 重定向到 newsite.com
- 引荐来源=“”
- 用户正在访问 3rdparty.com,点击指向 oldsite.com 的链接,然后 301 重定向到 newsite.com
- referer =“3rdparty.com”
此行为对于 301 重定向来说有些意义。
解决方案:我认为您应该在 301 响应中添加一个查询字符串参数,例如 ref=oldsite
并在您的新网站上检查其值(value)。
如果您担心 URL 中包含查询字符串参数,您可以告诉搜索引擎忽略特定的查询字符串参数。该过程因搜索引擎而异。显然有一个适用于所有主要搜索引擎的技巧: <link rel="canonical">
标签。示例:
-
http://newsite.com/?ref=oldsite
-
http://newsite.com/
-
-
http://newsite.com/?ref=oldsite&page=main
和 -
http://newsite.com/?page=main&ref=oldsite
-
http://newsite.com/?page=main
-
关于PHP 代码确定用户是否被 301 重定向到我的网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9496522/