尝试在服务器上调用mkdir()时出现以下错误...



该功能如下。它试图在站点的“wp-content/uploads文件夹”下创建一个文件夹。我已经验证PHP版本是5.2.15,并且主题文件夹中的文件是可写的,但是我想这不一定意味着uploads文件夹是可写的。

如何确定上载文件夹是否可写?

protected function category_images_base_dir()
{
    // Where should the dir be? Get the base WP uploads dir
    $wp_upload_dir = wp_upload_dir();
    $base_dir = $wp_upload_dir[ 'basedir' ];
    // Append our subdir
    $dir = $base_dir . '/cat-images';
    // Does the dir exist? (If not, then make it)
    if ( ! file_exists( $dir ) ) {
        mkdir( $dir ); //THIS IS LINE 373
    }
    // Now return it
    return $dir;
}

最佳答案

is_writable()可能是您要寻找的功能。

http://cz.php.net/manual/en/function.is-writable.php说:



另外,直接下一行与此处相关:



换句话说,请检查您的目录是否可以由Web服务器的用户ID写入-这可能是与您的用户ID不同的用户ID!设置适当的权限-例如将文件夹的用户组设置为服务器用户的用户组,并授予对组的读取,写入和执行权限。 (chgrp somegroup uploads; chmod g+r uploads; chmod g+w uploads; chmod g+x uploads)

关于php - 对mkdir()的权限被拒绝,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4962047/

10-11 21:06