【问题标题】:NOT typical PHP headers warning不是典型的 PHP 标头警告
【发布时间】:2013-08-14 14:25:54
【问题描述】:

由于 HTML 或空格或在发送标头之前在文件中,我曾看到标头警告。我知道要避免这种情况。我有一个生成 XML 文件的文件,当我在本地主机上运行它时,我可以成功将内容类型设置为 XML。当我在 我的生产服务器 上运行它时,我收到“标头已发送”警告。

我怀疑服务器上的某些东西在文件之前运行(即使我直接寻址文件,而不是作为包含)。我怀疑 WordPress 所以,为了避免这种情况,我创建了一个子域并将文件放在那里无济于事。

如何在服务器上的文件之前检测是否正在加载某些内容? WordPress 是否会接管整个域、子域和所有域?如果是这样,有没有办法防止这种情况?我希望它在 WordPress 之外运行。

【问题讨论】:

    标签: php wordpress http-headers


    【解决方案1】:

    您的php.ini 中可能有一个auto_prepend_file 指令,但我认为您很可能在文件开头成为BOM 的牺牲品。您应确保将文件保存为 UTF-8 没有 BOM(有时称为“ANSI as UTF-8”),并确保服务器也保留此编码。

    【讨论】:

    • 是的,BOM 是问题所在。现在我必须解决我现在可以看到的 XML 错误。
    【解决方案2】:

    如果您确定脚本中没有前置字符(您已检查 BOM 标记?)那么最可能的原因是网络服务器配置为自动前置文件 - 您可以通过以下方式验证:

    print ini_get('auto_append_file');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 2015-11-22
      • 2011-05-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多