【问题标题】:Undefined index: $_SERVER['HTTP_HOST'] Openshift scalable app未定义索引:$_SERVER['HTTP_HOST'] Openshift 可扩展应用
【发布时间】:2014-04-14 16:47:32
【问题描述】:

我在 openshift 中有一个可扩展的应用程序,但在尝试访问 PHP $_SERVER 变量时遇到问题。

我只是想做“$domain = str_replace("www.", "", $_SERVER['HTTP_HOST']);”但得到了错误

未定义的索引 HTTP_HOST

,这在普通应用中可以正常工作,但在可扩展应用中则不行。

我的应用程序有两个主文件夹“frontend”和“backend”,我使用.htaccess将所有数据从根文件夹重定向到“frontend”:

RewriteRule    ^$    frontend/    [L]
RewriteRule    (.*) frontend/$1    [L]

有谁知道我该如何解决这个错误?谢谢

更新:刚刚发现 openshift 有一个机器人每两三秒检查一次应用程序的健康状况,这些来自机器人的访问导致了错误。

【问题讨论】:

  • 当我最终仔细查看请求日志时,我清楚地看到 OpenShift 的应用程序监视器正在使用 HTTP/1.0 发出请求。这是帮助我理解发生了什么的最后一点信息。感谢您的帮助!

标签: php openshift http-host


【解决方案1】:

如果 HTTP_HOST 丢失,则意味着 (a) 客户端使用的是非常旧的浏览器,(b) 机器人不发送它或 (c) 站点正在通过其 IP 地址而不是域访问名字。

手册暗示此索引可能并不总是设置 http://php.net/manual/en/reserved.variables.server.php Host 的内容:当前请求的标头,如果有的话。

【讨论】:

    【解决方案2】:

    如果缺少HTTP_HOST,则意味着您的应用程序使用CLI 运行。

    【讨论】:

      猜你喜欢
      • 2022-01-25
      • 1970-01-01
      • 2013-07-19
      • 2015-03-31
      • 2018-07-07
      • 1970-01-01
      • 2012-09-03
      • 1970-01-01
      • 2018-05-23
      相关资源
      最近更新 更多