我的网站根文件夹的哪个user:group能够运行composer更新?

我有一个Pimcore项目根文件夹,该文件夹由www-data:www-data递归拥有。

如果我使用sudo composer update,一切正常,但是将使用root所有者设置许多文件,这可能会导致进一步的问题。

如果我使用sudo -u www-data composer update,则会收到 RuntimeException

file_get_contents(/home/me/.composer/config.json): failed to open stream: Permission denied

如果我使用sudo -u me composer update,则有时会得到另一个 RuntimeException

  An error occurred when executing the "'cache:clear --no-warmup'" command:                                                                             
  Fatal error: Uncaught RuntimeException: Unable to write in the cache directory (/var/www/html/pimcore/skeleton/var/cache/dev)  

如果我将根文件夹的所有权更改为me:www-data,则会出现 RuntimeException 错误,因为某些文件夹对于组www-data是不可写的,例如此文件夹{{ 1}}的权限设置为/var/www/html/pimcore/skeleton/var/cache/dev/twig

我的根文件夹应该属于哪个drwxr-xr-x,以及我应该如何运行user:group

qinjilei 回答:我的网站根文件夹的哪个user:group能够运行composer更新?

It's better if you do not run composer as root

除此之外,您使用哪个用户来运行作曲家并不是特别重要。只要它具有足够的权限就可以在项目文件上写(通常仅在vendorbinvarpublic上写;尽管它可能需要在不同的文件上写目录,具体取决于项目的类型。

由于您已经以root用户身份运行composer,因此看来/home/me/.composer/config.json的创建拥有root所有权,这给您带来了其他问题。只需sudo chown该文件,即可由您自己的用户读取。

设置项目,使所有文件都属于您的(非提升特权)用户,并且之后运行install后按照文档中的建议修复权限:

本文链接:https://www.f2er.com/3067064.html

大家都在问