header("Content-Type:text/html; charset=utf-8");
if ($_FILES['test']['error'] === UPLOAD_ERR_OK){
echo 'filename: ' . $_FILES['test']['name'] . '<br/>';
if (file_exists('upload/' . $_FILES['test']['name']))
{
echo 'file exist<br/>';
}
else
{
$file = $_FILES['test']['tmp_name'];
$dest = 'upload/' . $_FILES['test']['name'];
move_uploaded_file($file, $dest);
echo "seccess";
}
}
else
{
echo 'error code:' . $_FILES['test']['error'] . '<br/>';
}
这是我的PHP代码,我只是想上传一个简单的小txt文件到我的Apache服务器。当我在localhost中运行它时,它工作正常,但当我试图用apache运行时,错误代码为7。
chmod -R www-data:www-data /var/www
已将www-data设置为www的所有者,磁盘空间足够保存该文件。
我能做些什么来解决错误代码7的问题?
3条答案
按热度按时间ao218c7q1#
请检查目录是否具有
writeable
权限。该错误表明您没有权限在该目录中进行保存或写入。另外,检查该目录的磁盘空间。有关错误代码的更多详细信息,请参阅此链接:http://php.net/manual/en/features.file-upload.errors.php
sc4hvdpw2#
这也可能是你的临时文件是空间不足(只是发生在我身上)-这是文件去,而它正在上传。
您可以在php.ini文件中找到您的tmp文件目标,其值如下:
上传_tmp_dir
通常情况下,一旦文件完成上传,这将自行清理,但在我的情况下,我的一个管理员复制了一些视频,以确保安全,同时腾出更多的空间,所以我可以上传小文件,但不能上传大文件的症状,起初很令人困惑。
如果你上传的文件比你的临时空间大,这也可能发生--尽管我还没有测试过。
xvw2m8pv3#
我知道这是一个老职位。虽然,我通过修改selinux标志解决了错误7:
setsebool -P httpd_can_network_connect on
我希望任何到这里来寻找解决错误curl错误7的人都会发现这很有用。