【发布时间】:2011-11-11 14:01:37
【问题描述】:
我有 domain.com。如果用户已登录,它应该会自动加载 domain.com/option-X 其中 X 是用户的预定义选择。
所以,我在 index.php 的顶部执行此操作:
header("Location: /option-X");
但是,如果用户没有登录,我只是自动选择第一个选项,如下所示:
header("HTTP/1.1 301 Moved Permanently");
header("Location: /option-a");
所以,关于这样做的影响,我有两个问题:
- 由于搜索引擎爬虫不会登录,他们总是会得到 domain.com/option-a - 它有 301 标头会影响他们吗?
- 执行这些重定向的服务器 CPU 负载可能是多少?我不知道如何对其进行测试。当前网站(没有重定向)每天的访问量约为 10 万次。
【问题讨论】:
-
cpu 开销取决于您的脚本在重定向标头消失之前所做的事情。如果您将 pi 计算到 500 万个位置,那么进行重定向会使工作量增加一倍,因为浏览器将对新地址发出全新的 http 请求。否则,CPU 命中应该是最小的,而你所付出的只是一点额外的带宽。
-
谢谢马克!它在重定向之前所做的只是检查 $_SESSION 变量。
标签: php redirect header http-status-code-301