我在标准的 HostGator 专用服务器上有很多网站。我想运行可以访问和更改的 PHP 脚本(添加、更新、删除文件和目录)到此服务器上每个站点的文件结构。我需要做什么才能使其工作?现在,当我尝试siteA
从siteB
PHP 脚本中访问时,我收到权限被拒绝错误。
更新:
我刚发现我的服务器使用 SuPHP,这解释了为什么我无法让一个站点的脚本访问另一个站点。如果我切换到 fcgi,这不会有问题吗?
答案1
假设我有一个站点根目录,假设它位于 /siteroot
useradd maintenance
usermod -g maintenance maintenance
groupadd maintenance
chgrp maint /siteroot/* -R
chmod g+rw /siteroot/* -R
现在您可以登录维护用户来运行脚本,并且他应该具有适当的权限。
如果您将脚本上的组设置为维护并chmod g+s [script]
在要运行的脚本上使用 - 那么运行该脚本的任何用户都将在该组下运行它,因此组权限。如果您使用组位,请确保您的脚本是强化的,并且任何安全性较差的人或事物都无法访问。
请注意,我的经验并不丰富,因此请谨慎对待我的建议。我还强烈建议您备份您的网站根目录,以便在必要时恢复它。