【问题标题】:session_start() - warning... but there are no BOM, no white space, is emptysession_start() - 警告...但是没有 BOM,没有空白,是空的
【发布时间】:2012-07-05 10:44:46
【问题描述】:

我遇到了会话问题,我收到以下警告消息:

警告:session_start() [function.session-start]:无法发送会话 缓存限制器 - 标头已发送(输出开始于 /home/.../public_html/admin/cp.php:1) 在 /home/.../public_html/admin/cp.php 在第 2 行

我以为是 BOM,其实不是,我在 Dreaweaver 中编辑(重写了 session_start() 函数)文件然后重新上传,同样的警告,我在 Notepad++ 中编辑,同样的警告。

没有空格,没有制表符,代码开头是:

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html xmlns:fb="http://ogp.me/ns/fb#">
<html itemscope itemtype="http://schema.org/Blog">

有什么问题?我该怎么办?

谢谢!

【问题讨论】:

  • 如果您发布的文件是cp.php,那么肯定有 BOM 或其他一些不可见字符。在十六进制查看器/编辑器中查看文件,看看里面有什么。
  • 我自己没用过,但也许值得一试UTF-8 BOM tester

标签: php session warnings


【解决方案1】:

如果您在 php 开始标记的同一行有这样的错误,那么它肯定是空格或 BOM,或另一个不可见字符。尝试使用可以显示所有不可见字符的编辑器,例如 Notepad++。

另外,请确保替换服务器上的正确文件。

【讨论】:

  • 是的,确实要确保您获得了新文件,例如通过插入一些单词,您可以验证。为了安全起见,甚至可能删除浏览器缓存...
【解决方案2】:

请在页面顶部和开头使用ob_start();

【讨论】:

  • 我认为发现(并解决)问题比绕过它更好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-08
  • 2020-11-01
  • 1970-01-01
相关资源
最近更新 更多