我们在 Centos 网络服务器上安装了 magento。文件的所有权有点混乱。我以前遇到过权限问题,现在 magento 抱怨说它没有足够的权限来安装插件。
我听说用户“nobody”是默认的 Apache 用户。大多数文件和文件夹都有root:devs
,我想将其更改为nobody:devs
如下形式:
sudo chown -R nobody /path/to/magento
1) 此更改是全站范围的,我不想对生产安装造成太大影响。这会对网站产生任何影响吗?除了这个插件安装问题外,它现在运行正常。
似乎无论所有者是谁,apache 都可以使用这些文件。我看到了“root:root”,还有带有“john:john”(或类似名称)的文件、“root:devs”(devs 是一组特定用户)、“john:devs”和“john:users”等的文件。
2)如果我将所有者设置为“无人”,magento 是否有足够的权限来安装该插件?
答案1
Apache 是 Centos 上的默认用户,假设您是从 Yum 安装的。您可以并且应该通过查看 /etc/httpd/conf/httpd.conf 来验证。
Magento 安装过程中还有其他问题吗?例如 php suexec?php-fpm 或 php-cgi 进程?
此外,正确的命令应该是
sudo chown -R nobody.devs /path/to/magento
回答 1 和 2:粗略地检查正在运行的 Magento 安装的权限会让您很烦恼。这可能是克隆盒子、测试然后在生产中运行的好日子。Centos/Redhat 上的“Nobody”用户有各种 Web 服务器怪癖和太少的权限(想想 Selinux 和所有),以至于默认用户是命名用户 Apache。