【发布时间】:2016-04-25 05:50:49
【问题描述】:
嗨,我有一个空的 php 文件,里面只有一行代码
<?php session_start(); ?>
除了上面的代码之外,没有 html 标记或任何 php 代码。
在本地主机上它不会触发错误,但是当它在服务器上并且我访问该页面时,会在错误日志上打印一个新行,上面写着
[25-Apr-2016 05:43:34 UTC] PHP 警告:session_start():无法发送会话缓存限制器 - 已在 /path/ 中发送标头(输出开始于 path/to/file.php:1)第 1 行的 to/file.php
服务器正在运行 apache 和 php 5.6(如果相关),我也尝试删除 .htacces 文件以防万一这是导致问题的原因,但仍然没有运气。
谁能指出我正确的方向,看看是什么导致了问题?谢谢!
【问题讨论】:
-
您是直接访问这个 PHP 文件吗?在输出任何内容后,是否有包含在某处调用
session_start的 PHP 脚本? -
是的。我正在访问像“domain.com/file.php”这样的页面。在不同页面的某处包含 session_start() 但在当前页面上没有
-
我假设它在第 1 行(上面没有空格)。我发现这个 (serverfault.com/questions/618316/…) 似乎从未得到过验证的答案。也许尝试将您的代码分成三行:1.
<?php2.session_start();3.?> -
错误更改为“...在第 2 行的 /path/to/file.php 中已发送标头(输出开始于 path/to/file.php:1)”。开始的输出仍然在同一行。但是error_log上仍然打印了一个错误
-
感谢按位,但 Umair 解决了我的问题,感谢您的意见!