为新创建的帐户设置默认文件夹权限

Setting default folder permissions for newly created accounts

通过 WHM 创建新帐户后,我发现在 public_html 文件夹中创建的所有文件夹都有 775 的权限,这通常会导致浏览器出现 500 错误。

我目前正在通过 SSH find . -type d -exec chmod 755 {} \;public_html 文件夹中为我在 VPS 上创建的每个新帐户执行以下命令。

如何为新的 files/folders VPS-wide 设置默认权限,这样我就不必每次都通过 SSH 登录 运行 该命令来创建一个新的我的 VPS?

帐户

首先,您必须给 WHM/Cpanel 开票,因为这种行为是不正确的。当 WHM 创建新帐户时,始终使用 755 权限创建 public_html

但解决方法是使用 post 和预脚本挂钩。

  • 创建文件/usr/local/cpanel/scripts/postwwwacct
  • 此文件 运行 在 /usr/local/cpanel/scripts/postwwwacct 之后(每次系统创建一个 cPanel 帐户)
  • chmod 755 /usr/local/cpanel/scripts/postwwwacct

/usr/local/cpanel/scripts/postwwwacct

的内容
#!/usr/bin/php -q

// Set up our variables to be usable by PHP
$opts = array();
$argv0 = array_shift($argv);

while(count($argv)) {
    $key = array_shift($argv);
    $value = array_shift($argv);
    $opts[$key] = $value;
}


exec("chmod 755 {$opts['homedir']}/public_html");

这会将您的 /home/{user}/public_html 更正为 755

可以在cpanel上使用doc,虽然Cpanel的文档和失效链接比较少,导致google发现很多质量不好的复制粘贴信息

cPanel Forum 的人们帮助我弄清了真相。

事实证明,使用连接协议 SFTP 时会发生此行为。我已 将连接协议更改为 FTP 并且 现在创建的所有新文件夹都具有 755 个权限

希望对大家有所帮助!