我正在遵循 symblog 上的指南:http://tutorial.symblog.co.uk/docs/doctrine-2-the-blog-model.html
我正在尝试运行:$ php composer.phar update
在更新 composer.json
之后出现以下错误:
[Symfony\Component\Filesystem\Exception\IOException]
Failed to remove file "/var/webroot/vhosts/mysite.co.uk/htdocs/Symfony/app/cache/dev_old/profiler/32/95/639532"
此文件的权限是:0644,所有者是 www-data,组是 sambashare,其中包括我作为 (john) 通过 ssh 登录的用户。
由于这是从命令行运行 php,因此 php 是否以“john”身份运行,因此在要删除的文件组中而不是用户?
它最后的运行时错误:
[RuntimeException]
An error occurred when executing the "'cache:clear --no-warmup'" command.
经过一番搜索后,有些人刚刚说手动清除此缓存..但我怎样才能从根本上解决这个问题,这样我就不必手动执行此操作了?
谢谢, 约翰
最佳答案
这是 Symfony2 的一个常见问题,在大多数情况下,您应该在 apache2 用户下运行您的命令,这是 www-data 用户。
您可以使用
切换到 www-data 用户su www-data -s /bin/bash
那么你应该将 755 设置为 www-data 具有足够权限的缓存文件夹。 Symfony2 文档中对此有一个错误的解释。
http://symfony.com/doc/current/book/installation.html
文档中的此处是“设置权限”部分,您可以在其中了解如何配置 ACL 和其他用户权限。
关于php - Symfony 2.3 无法使用 php composer.phar update 删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20840937/