【发布时间】:2017-07-06 18:07:01
【问题描述】:
我收到以下错误:
PHP Warning: Director::protocolAndHost() lacks sufficient information - HTTP_HOST not set. in /<path/to/project>/framework/control/Director.php on line 488
但是,当我将 print_r($_SERVER['HTTP_HOST']); 添加到 mysite/_config.php 时,我得到了相应的网址。
任何想法这可能是什么?在同一主机上开发数周后,它昨天突然开始。它只发生在我的远程环境中。本地工作正常。我没有进行任何配置更改。
我已经查看了this post on SS forums,以及this tiny post,因为我使用的是持续部署系统,但到目前为止都没有帮助我。
任何想法这可能是什么或我应该在哪里寻找?非常感谢。
我的项目使用:
- SilverStripe 3.6.0
- PHP 5.5.9
- Apache 2.4.7
【问题讨论】:
-
这通常发生在运行 CLI 时。那是你在做什么?如果是这样,请务必在 _ss_environment.php 中设置 $_FILE_TO_URL_MAPPING。
-
@UncleCheese 我没有运行 CLI。实际上,事实证明这个错误已经发生了几个星期,并且对我的项目来说是非破坏性的。现在才在研究另一个问题时注意到它。我将看看我明天是否可以按照您的建议通过添加 $_FILE_TO_URL_MAPPING 来清除它。
-
对于我遇到的 cli 问题:
/** * This is used by sake to know which directory points to which URL */ global $_FILE_TO_URL_MAPPING; $_FILE_TO_URL_MAPPING[__DIR__] = 'http://localhost:32773/';喜欢写在这里:gist.github.com/ryanwachtl/5793212
标签: php apache silverstripe