PHP 使用 header() 重定向,搜索引擎友好吗?
我有一个关于使用 php 函数 header() 进行重定向的简单问题。
我目前正在编程的项目部署在多个域上,但在其中一个页面上有一个公共会话和一个登录身份验证。我已经编写了一个使用另一个域(即 session.server.com)上的全局会话服务器的解决方案。当用户访问其中一个域并且尚未经过身份验证(这意味着本地域会话被标记为非全局)时,他将被重定向到存储 cookie 的会话服务器。 cookie 代码将附加到请求中,并且用户将被重定向回项目的域。例如:
1) 用户访问 www.domaina.com/query
2) PHP 检查全局会话密钥并重定向到
3) session.domain.com,其中保存全局会话 cookie,
4) 被重定向回 www。 domaina.com/_set_cookie/$SOMEENCODEDINFORMATION,并在 $SOMEENCODEDINFORMATION 中附加和加密正确的全局会话数据
5) 用户重定向到 www.domaina.com/query。现在脚本知道他已通过全局会话服务器的身份验证
所有重定向都是通过 PHP 中的简单 header("Location: ...")
调用完成的。
该系统运行良好,没有任何问题。但我主要关心的是搜索引擎中的排名。当我的页面被抓取时,谷歌(或任何其他机器人)会看到什么。它会遵循标题重定向,直到他最终返回主页吗?或者我应该编写一个机器人过滤器,以便在机器人抓取我的页面时不进行任何重定向?
感谢您的任何建议,
来自德国的问候, 安迪
附注抱歉,我的英语并不完美,但我希望你明白我的意思。
I have a simple question about redirects using the php function header().
My project, I'm currently programming on is deployed on several domains, but with a common session and a single login authentication on one of the pages. I've written a solution using a global session server on another domain, i.e. session.server.com. When a user visits one of the domains and is not authenticated yet (that means the local domain session is marked as not global), he will be redirected to the session server where a cookie is stored. The cookie-code is appended to the request and the user is being redirected back to the project's domain. For example:
1) User visits www.domaina.com/query
2) PHP checks the global session key and redirects to
3) session.domain.com, where a global session cookie is kept and
4) is being redirected back to www.domaina.com/_set_cookie/$SOMEENCODEDINFORMATION with the correct gloabl session data appended and encrypted in $SOMEENCODEDINFORMATION
5) The user is redirect to www.domaina.com/query. Now the script knows he is authenticated by the global session server
All the redirects are done via simple header("Location: ...")
calls in PHP.
This system works great and without any problem. But my main concern about this is the ranking in the search engines. What will a google (or any other bot) see when my page is crawled. Will it follow the header redirects until he's finally back on the main page? Or should i write a bot-filter in order not to make any redirect when a bot crawls my page?
Thank you for any propositions,
Greets from Germany,
Andi
p.S. sorry, my english is not perfect, but I hope you know what I mean.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我的理解是,如果你正在进行 301 重定向,那就可以了。
快速 Google:301 重定向
My understanding is that it is ok, if you are doing a 301 redirect.
Quick Google: 301 redirects
+1 表示 301 重定向。
为了将来的参考,我相信 OAuth 提供了一种在域之间共享帐户的安全方法(尽管我没有实际使用它) )。 许多公司都以这种或那种方式使用它,包括 Twitter、Google 和Netflix。
+1 for 301 redirects.
For future reference, I believe OAuth provides a safe way to share an account between domains (though I haven't actually used it). It's used by many companies in one way or another, including Twitter, Google, and Netflix.