我有一个 php uploader ,如下所示
<form enctype="multipart/form-data" action="jsonlog.php" method="POST">
<!-- MAX_FILE_SIZE must precede the file input field -->
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<!-- Name of input element determines name in $_FILES array -->
Send this file: <input name="file" type="file" />
<input type="submit" value="Send File" />
</form>
在 jsonlog.php 中:
if($_FILES['file']['error']>0)
{
echo "Reading Error: " . $_FILES['file']["error"] . "<br />";
}
else
{
code to process
}
它在我的本地主机上通过了,但是当我在 linux 服务器上尝试时,它总是给我错误:
UPLOAD_ERR_CANT_write 值:7,无法将文件写入磁盘。任何人都知道如何解决它?
谢谢
是的,我检查了tmp目录权限,见下文
drwxrwxrwx 2 bitnami bitnami 4096 2011-09-21 13:34 tmp
我可以使用如下命令在 tmp 中创建一个新文件
sudo vi test.txt
uploader 仍然返回错误 PLOAD_ERR_CANT_write。
还有一件事我不明白:我以 bitnami 身份登录,我应该对文件夹 tmp 具有完全控制权,但我无法使用不带 sudo 的命令将文件写入 tmp
vi t.txt
我无法保存更改。它返回这个错误
E514: write error (file system full?)
WARNING: Original file may be lost or damaged
don't quit the editor until the file is successfully written!
这是 df 命令的输出
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.9G 9.4G 0 100% /
devtmpfs 854M 116K 854M 1% /dev
none 871M 0 871M 0% /dev/shm
none 871M 48K 871M 1% /var/run
none 871M 0 871M 0% /var/lock
none 871M 0 871M 0% /lib/init/rw
/dev/sda2 335G 195M 318G 1% /mnt
但是当我运行 sudo du -sh 时,输出是
/$ sudo du -sh /
du: cannot access `/proc/32760/task/32760/fd/4': No such file or directory
du: cannot access `/proc/32760/task/32760/fdinfo/4': No such file or directory
du: cannot access `/proc/32760/fd/4': No such file or directory
du: cannot access `/proc/32760/fdinfo/4': No such file or directory
855M /
还远远不够。谁能告诉我为什么?
最佳答案
您是否检查过该目录是否可写/您是否检查过所有权限?该错误表明由于权限问题,您无法写入文件。
关于php - : UPLOAD_ERR_CANT_write Value: 7, 文件写入磁盘失败怎么解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7491230/