【问题标题】:What's causing this permission's error and how can I work around it?是什么导致了此权限的错误,我该如何解决?
【发布时间】:2011-01-28 09:46:51
【问题描述】:

警告:move_uploaded_file(/home/site/public_html/wp-content/themes/mytheme/upgrader.zip) [function.move-uploaded-file]:无法打开流:/home/site/public_html 中的权限被拒绝/wp-content/themes/mytheme/uploader.php 在第 79 行

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

该行的代码如下...

// 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!");
}

【问题讨论】:

  • 只是观察一下:您检查上传文件的 MIME 类型,然后使用 $okay = strtolower($name[1]) == 'zip' ? true: false; 行丢弃检查结果

标签: php wordpress permissions


【解决方案1】:

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

除了我提供的第二个替代方案的一些技术之外,以下文章还提供了一些更多信息:

http://www.mysql-apache-php.com/fileupload-security.htm

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      尝试在移动脚本之前使用 chmod 功能,并为该文件夹添加写入权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-04-22
        • 2023-03-08
        • 2011-05-20
        • 2020-03-30
        • 2021-11-23
        • 1970-01-01
        • 2012-10-25
        • 1970-01-01
        相关资源
        最近更新 更多