当我部署我的 Symfony2 应用程序时,我遇到了一个障碍:我必须以 user 身份连接到服务器,foo
但 apache 以 user 身份运行www-data
。我想使用缓存预热,但随后app/cache/prod
由用户创建,foo
而不是www-data
由 apache 以后使用。我能做些什么?
问问题
503 次
2 回答
0
从 Capifony 2.1.x 开始,添加了新的权限功能。
请查看文档章节Automatically set proper permissions。
set :use_set_permissions, true # enables setting the permissions
set :writable_dirs, ["app/cache", "app/logs"]
set :webserver_user, "www-data"
set :permission_method, :acl # (:acl|:chmod|:chown)
于 2013-10-28T08:19:37.627 回答
0
su www-data <my command here>
将您切换到 www-data 用户以运行该命令。
更好的是:
chmod -R www-data app/cache/prod
更改所有权
也许更好
chown -R o+rw app/cache/prod
这将允许“其他”人读取和写入缓存。
您甚至可以+S
在应用程序/缓存上设置该位,以便在其中创建的文件获得自动清除权限。
于 2013-10-27T12:21:32.990 回答