我正在尝试在我的服务器中运行此代码
<?php
session_start();
?>
我收到了以下警告信息。我以前从未见过这样的警告。
Warning: session_start() [function.session-start]: open(/var/chroot/home/content/00/6684400/tmp/sess_uoouukt8m6efc0nc2ar5t2vq94, O_RDWR) failed: No such file or directory (2) in /home/content/00/6684400/html/html-tweetcomments/y.php on line 2
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/content/00/6684400/html/html-tweetcomments/y.php:2) in /home/content/00/6684400/html/html-tweetcomments/y.php on line 2
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/content/00/6684400/html/html-tweetcomments/y.php:2) in /home/content/00/6684400/html/html-tweetcomments/y.php on line 2
Warning: Unknown: open(/var/chroot/home/content/00/6684400/tmp/sess_uoouukt8m6efc0nc2ar5t2vq94, O_RDWR) failed: No such file or directory (2) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct () in Unknown on line 0
我该如何解决这个问题?
答案 0 :(得分:2)
权限问题。
检查tmp
文件夹权限。让它可写。
Failed to write session data (files).
另外,检查session_start()
答案 1 :(得分:2)
确保文件夹/var/chroot/home/content/00/6684400/tmp
存在且可由PHP写入
sudo mkdir -p /var/chroot/home/content/00/6684400/tmp/
sudo chmod 1777 /var/chroot/home/content/00/6684400/tmp/
session_start()
设置包含会话ID的cookie。在HTTP协议中,Cookie在HTTP标头Set-Cookie
中发送。
如果您发送任何输出(包括PHP警告),这将被写入HTTP回答正文,PHP将无法再发送标题。
要确保在最后写入HTTP响应正文,您可以在PHP脚本的最开头添加ob_start()
。
这将创建一个输出缓冲区,当脚本到达结尾时将自动刷新输出。
<强>参考强>
答案 2 :(得分:1)
警告:session_start()[function.session-start]:无法发送会话 cookie - 已经发送的标题(输出开始于 /home/content/00/6684400/html/html-tweetcomments/y.php:2)in 第2行/home/content/00/6684400/html/html-tweetcomments/y.php
在 session_start 调用之前正在打印某些内容。在致电
之前,请检查html中的任何回音甚至空格答案 3 :(得分:1)
线索是第一个错误:
open(/var/chroot/home/content/00/6684400/tmp/sess_uoouukt8m6efc0nc2ar5t2vq94, O_RDWR)
failed: No such file or directory (2)
看起来会话文件引用的目录不存在或Web用户(运行Web服务器的用户)不可写。
第一个错误导致其余错误;
答案 4 :(得分:0)
如果在PHP代码之前有相同的输出,请在php代码之后移动它 例如:
<script>
...javascript code...
</script>
<?php
session_start();
?>
在php标记之后移动脚本标记。像这样:
<?php
session_start();
?>
<script>
...javascript code...
</script>