“写入失败:设备上没有剩余空间”是什么意思?

时间:2011-03-23 22:27:14

标签: php diskspace

我在我的网站上收到这些错误,但我没有更改任何代码或任何内容,所以我不知道为什么会这样。

Warning: Unknown(): write failed: No space left on device (28) 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 (/tmp) in Unknown on line 0

4 个答案:

答案 0 :(得分:11)

我假设您在共享托管服务提供商处托管您的网站 基本上,错误意味着服务器已用完磁盘空间,因此无法完成sql命令

只需致电/发送电子邮件给托管公司,他们应该为您解决

答案 1 :(得分:5)

在共享主机中,更改会话保存的位置。

创建目录:/ public_htm / tmp,赋予权限(777)< - 然后你必须调整它(为安全起见)。

使用以下命令在/ public_htm / tmp目录中创建文件.htaccess:

order deny, allow
deny from all
allow from 127.0.0.1

在PHP脚本中,在顶部(在前端控制器中):

session_save_path(dirname($_SERVER['DOCUMENT_ROOT']).'/public_html/tmp');

重要提示:您必须在session_start()

之前添加

使用脚本检查:

<?php
session_save_path(dirname($_SERVER['DOCUMENT_ROOT']).'/public_html/tmp');
session_start();
$_SESSION['Text'] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed quis nunc eu ut elit eget adipiscing facilisis turpis."
phpinfo();
?>

检查是否更改了指令“session.save_path”

答案 2 :(得分:3)

  

df -h

向左看/ tmp空间。

如果/ tmp超过100%

  

cd / tmp

     

rm -r ./* -f

您可以再次保存会话。

答案 3 :(得分:0)

如果您有分区(df -h),而您托管的mysql分区已满。

将占用更多大小的文件夹移动到新分区(在我的情况下为mv /var/mail /home),并创建一个symink sudo ln -s /home/mail mail。您可以移动mysql本身。