Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 什么';是什么导致了此权限';s错误,我如何解决它?_Php_Wordpress_Permissions - Fatal编程技术网

Php 什么';是什么导致了此权限';s错误,我如何解决它?

Php 什么';是什么导致了此权限';s错误,我如何解决它?,php,wordpress,permissions,Php,Wordpress,Permissions,警告:移动上传的文件(/home/site/public\u html/wp content/themes/mytheme/upgrader.zip)[function.move upgrader file]:无法打开流:第79行/home/site/public\u html/wp content/themes/mytheme/uploader.php中的权限被拒绝 警告:move_upload_file()[function.move upload file]:无法将“/tmp/phptem

警告:移动上传的文件(/home/site/public\u html/wp content/themes/mytheme/upgrader.zip)[function.move upgrader file]:无法打开流:第79行/home/site/public\u html/wp content/themes/mytheme/uploader.php中的权限被拒绝

警告:move_upload_file()[function.move upload file]:无法将“/tmp/phptempfile”移动到/home/site/public_html/wp content/themes/themes/myteme/upgrader.zip”中的/home/site/public_html/wp content/themes/myteme/uploader.php第79行 有个问题。对不起

下面是该行的代码

// permission settings for newly created folders
$chmod = 0755;  

// Ensures that the correct file was chosen
$accepted_types = array('application/zip', 
                            'application/x-zip-compressed', 
                            'multipart/x-zip', 
                            'application/s-compressed');

foreach($accepted_types as $mime_type) {
    if($mime_type == $type)
        {
        $okay = true;
        break;
    } 
}

$okay = strtolower($name[1]) == 'zip' ? true: false;

if(!$okay) {
      die("This upgrader requires a zip file. Please make sure your file is a valid zip file with a .zip extension");       
}

//mkdir($target);
$saved_file_location = $target . $filename;

//Next line is 79 
if(move_uploaded_file($source, $saved_file_location)) {
    openZip($saved_file_location);
} else {
    die("There was a problem. Sorry!");
}

似乎需要向zip文件要移动到的文件夹添加写入权限。我假设您正在使用Linux和apache。您可以将上载文件夹的所有者更改为apache,并授予其770权限。一个不安全的替代方法是不更改文件夹的所有者,并将权限更改为777,正如我所说的那样,这是不安全的

下面的文章除了提供一些技术来保护我提供的第二个备选方案之外,还提供了一些更多的信息:


如果您有权访问服务器,请查看.htaccess文件和php.ini文件夹,以检查允许上载哪些文件。如果您是通过公司托管,您应该可以访问带有php设置部分的在线控制面板。

在移动脚本之前尝试使用chmod函数,然后将写入权限添加到该文件夹。

只是观察:检查上传文件的MIME类型,然后将检查结果与行
$ok=strtolower($name[1])=='zip'一起丢弃?真:假