Symfony 2.3无法使用php composer.phar更新删除文件

Joh*_*ohn 8 php apache2 composer-php ubuntu-12.04 symfony-2.3

我正在遵循symblog指南:http://tutorial.symblog.co.uk/docs/doctrine-2-the-blog-model.html

我试图运行:$ php composer.phar update更新后composer.json但得到以下错误:

[Symfony\Component\Filesystem\Exception\IOException]
无法删除文件"/var/webroot/vhosts/mysite.co.uk/htdocs/Symfony/app/cache/dev_old/profiler/32/95/639532"

此文件的权限是:0644是所有者是www-data,该组是sambashare,其中包括我作为(john)ssh'd的用户.

因为这是从命令行运行php,所以php是作为'john'运行的,因此在想要被删除但不是用户的文件组中?

最后的运行时错误:

[RuntimeException]
执行"'cache:clear --no-warmup'"命令时发生错误.

经过一些搜索后,有些人刚刚说过手动清除这个缓存..但是如何在root修复此问题,所以我不必手动执行此操作?

谢谢,约翰

Ren*_*hle 5

这是Symfony2的一个常见问题,您应该在apache2用户下运行命令,大多数情况下这是www-data用户.

您可以使用切换到www-data用户

su www-data -s /bin/bash
Run Code Online (Sandbox Code Playgroud)

那么你应该将755设置为缓存文件夹,使www-data具有足够的权限.在Symfony2文档中有一个关于它的蠢解释.

http://symfony.com/doc/current/book/installation.html

在文档的"设置权限"部分中,您可以看到如何配置ACL和其他用户权限.