奇数会话/网址错误

时间:2017-07-15 08:41:06

标签: php session

我的网站上的网页出现了一个非常奇怪的错误,特别是只有一个网址。

我在页面的第一行有一个PHP包含。包含文件的第一行是session_start();

页面加载时出现此错误:

  

警告:session_start():无法发送会话cookie - 已由... // etc

发送的标头

这很奇怪,因为会话启动是页面上的第一件事,并且没有其他尝试启动会话。然而,甚至更奇怪的事情......

我有许多其他页面使用基本相同的代码和不同的内容,它们工作正常,没有错误。我用另一个页面中的代码替换了问题页面中的整个代码,基本上创建了一个克隆。 加载页面时,错误仍然存​​在! WTH?

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

您可能遇到BOM的问题,有些编辑器没有显示此标记,因此您无法看到它,但在会话开始之前会将其发送到浏览器。

如何在Windows Notepad ++上删除BOM

Remove a BOM character in a file

Linux使用aw​​k

Using awk to remove the Byte-order mark

答案 1 :(得分:2)

BOM可能有问题,请使用Notepad++来解决此问题

  • 下载Notepad ++并在那里打开文件,删除所有花哨的字符

  • 确保

  • 之前没有像“”或制表符或换行符这样的空格字符
  • 在Notepad ++中,单击编码,然后单击不带BOM的UTF-8,将文件转换为不带BOM的UTF-8,然后保存。

  • 还要添加ob_start();在session_start()之前;为了安全起见。