【问题标题】:Codeigniter: Message: Cannot modify header information - headers already sent by (output started at [duplicate]Codeigniter:消息:无法修改标头信息 - 标头已由(输出开始于 [重复]
【发布时间】:2013-04-05 04:32:32
【问题描述】:

我创建了一个动态菜单 CMS 网站。我是在Windows系统下开发的。当我在 Windows 操作系统中运行我的项目时,我的项目运行没有任何错误。但现在将其上传到 Linux 操作系统服务器我收到警告和错误,例如:

    A PHP Error was encountered

    Severity: Warning

    Message: Cannot modify header information - headers already sent by (output started at /home/ansofcm8/public_html/apps/resources/math/application/core/MY_Controller.php:1)

    Filename: libraries/Session.php

    Line Number: 675

可能是什么原因。请帮帮我。

【问题讨论】:

  • @JohnConde 谢谢。解决这个问题后我会删除这个问题
  • 向我们展示第 675 行的 Session.php 文件
  • 大声笑,不要删除它,给帮助过你的 Jonh Conde 至少一票!
  • @Tomás 我给了他一票。谢谢

标签: php codeigniter


【解决方案1】:

MY_Controller.php 中的 php 打开标签 <?php 之前似乎有空格。

检查所有 PHP 文件并删除 <?php 标记之前的空格。如果有空格或换行,则启动http请求的body,不能在http请求中添加新的headers。

【讨论】:

  • 是的,是一个空格。 @Burls Willis 检查headers already sent by (output started at MY_Controller.php:1)。它指向第 1 行,唯一在 php 文件的第一行向前端发送内容的是空格。
  • @Tomás 检查我的答案
  • @phpNoOb 那我应该在那一行做什么?我应该给更多空间还是在php opne标签<?php之前不给空间@
  • 之前的空格错误
  • 对于我的问题,我有一个 php cron 任务,该任务每 5 分钟访问一次该控制器以运行一个函数。该 php cron 文件导致会话标头已发送问题。我不得不将该控制器中的 session_start 移动到一个未被 cron php 任务调用的函数中。这解决了它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-27
相关资源
最近更新 更多