我有一个php上传器,如下所示
<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
}
它传递给我的localhost,但是当我尝试使用linux服务器时,它总是给我错误:
UPLOAD_ERR_CANT_write值:7,无法将文件写入磁盘。谁知道怎么解决?
由于
是的,我查看了tmp目录权限,见下文
drwxrwxrwx 2 bitnami bitnami 4096 2011-09-21 13:34 tmp
我可以使用像
这样的命令在tmp中创建一个新文件sudo vi test.txt
上传者仍然会返回错误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 /
远远不够。谁能告诉我为什么?
答案 0 :(得分:3)
您是否检查过目录是否可写/是否已检查所有权限?该错误表示由于权限问题,您无法编写该文件。