Permissions 共享1和1主机中受保护的moodledata文件夹(用于moodle 2.2安装)

Permissions 共享1和1主机中受保护的moodledata文件夹(用于moodle 2.2安装),permissions,hosting,directory,moodle,Permissions,Hosting,Directory,Moodle,我正在尝试在共享的linux 1和1服务器上安装Moodle 2.2。在web安装之后,我进入了一个步骤,它要求提供moodledata文件夹的路径。我已经读到我需要把它放在没有公共访问权限的地方,我相信这意味着在公共web根文件夹之上 因此,如果公共web根文件夹是:/homepages/44/d**/htdocs 文件夹路径应为:/homepages/44/d**/moodledata 问题是,当我想在那里创建一个文件夹(使用ssh连接)时,会出现“权限被拒绝”错误 我联系了1和1,他们告诉

我正在尝试在共享的linux 1和1服务器上安装Moodle 2.2。在web安装之后,我进入了一个步骤,它要求提供moodledata文件夹的路径。我已经读到我需要把它放在没有公共访问权限的地方,我相信这意味着在公共web根文件夹之上

因此,如果公共web根文件夹是:/homepages/44/d**/htdocs

文件夹路径应为:/homepages/44/d**/moodledata

问题是,当我想在那里创建一个文件夹(使用ssh连接)时,会出现“权限被拒绝”错误

我联系了1和1,他们告诉我,使用我的托管软件包(双重无限制),无法在公共web文件夹之上的级别创建文件夹,我应该升级托管软件包


这是唯一的办法吗?我可以像moodle demands一样获得受保护的文件夹而不必升级托管软件包吗?

如果您知道自己在做什么,可以执行以下步骤在moodle目录中安装moodledata

这些修改将关闭关于moodledata安全要求的moodle验证

您必须编辑moodle文件夹install.php根目录中调用的文件

在第230行附近,对以下代码进行注释:

/*
    while(is_dataroot_insecure()) {
        $parrent = dirname($CFG->dataroot);
        $i++;
        if ($parrent == '/' or $parrent == '.' or preg_match('/^[a-z]:\\\?$/i', $parrent) or ($i > 100)) {
            $CFG->dataroot = ''; //can not find secure location for dataroot
            break;
        }
        $CFG->dataroot = dirname($parrent).DIRECTORY_SEPARATOR.'moodledata';
    }
*/
/*
 else if (is_dataroot_insecure()) {
        $hint_dataroot = get_string('pathsunsecuredataroot', 'install');
        $config->stage = INSTALL_PATHS;

    }
*/
在第300行附近,对以下代码进行注释:

/*
    while(is_dataroot_insecure()) {
        $parrent = dirname($CFG->dataroot);
        $i++;
        if ($parrent == '/' or $parrent == '.' or preg_match('/^[a-z]:\\\?$/i', $parrent) or ($i > 100)) {
            $CFG->dataroot = ''; //can not find secure location for dataroot
            break;
        }
        $CFG->dataroot = dirname($parrent).DIRECTORY_SEPARATOR.'moodledata';
    }
*/
/*
 else if (is_dataroot_insecure()) {
        $hint_dataroot = get_string('pathsunsecuredataroot', 'install');
        $config->stage = INSTALL_PATHS;

    }
*/

是的,但是moodledata目录就不安全了,对吗?我想知道是否有可能以某种方式保持它的安全。Moodle在moodledata中放置了一个.htacces文件,以防止未经授权的访问,并且您始终只能向该目录中的apache用户授予权限。我认为即使目录中有moodledata,您也会非常安全。