无法发送会话cookie - 已发送的标头

时间:2012-06-25 04:54:42

标签: php

我有一个PHP脚本,代码中的第一件事是session_start();,但我一直收到此错误

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/****/public_html/admincp/index.php:1) in /home/****/public_html/admincp/index.php on line 1

但该脚本在localhost中效果很好。

<?php session_start();?>
<?php
require 'global.php';
?>


<?php

//check if the user logged in
if(!isset($_SESSION['user_id']))
page_redirect('login.php'); // go to login.php.
?>

2 个答案:

答案 0 :(得分:2)

在您喜欢的文本编辑器中打开文件,并将文件转换为UTF8而不使用BOM。 烦人的错误,曾经做过同样的事情。

答案 1 :(得分:0)

很多时候,文件顶部的单个空白字符可能会导致此错误,因为输出了空格字符。确保<?php session_start(); ?>之上没有任何内容,甚至没有空格字符。如果您所在的主机有一个auto_prepend_file,那么它也可以将其丢弃。