Php 如何授予symfony写入权限
我这里有一张上传照片的表格。 起初我遇到了一个错误,因为symfony无法创建direcotry,所以我手动创建了它们 现在我得到了这个错误:Php 如何授予symfony写入权限,php,linux,symfony,Php,Linux,Symfony,我这里有一张上传照片的表格。 起初我遇到了一个错误,因为symfony无法创建direcotry,所以我手动创建了它们 现在我得到了这个错误: Unable to write in the "/home/crixi/projects/symfony/src/Acme/TestBundle/Entity/../../../../web/uploads/picture" directory 我在用ubuntu 是否有任何设置需要我指定symfony righs在该文件夹中写入?如果您使用的是Ub
Unable to write in the "/home/crixi/projects/symfony/src/Acme/TestBundle/Entity/../../../../web/uploads/picture" directory
我在用ubuntu
是否有任何设置需要我指定symfony righs在该文件夹中写入?如果您使用的是Ubuntu,那么您的web用户将是
www-data
,而不是apache
。这就是为什么当您更改apache权限时它不起作用的原因。您可以通过执行以下操作来正确执行此操作:
sudo chgrp-R www-data/home/crixi/projects/symfony/web/uploads
sudo chmod-rg+rwx/home/crixi/projects/symfony/web/uploads
www-data
)有适当的权限写入上载目录和子目录。这比给每个人写权限要好,因为在dev env中正确操作总是好的,这样在进行prod时就不会出现问题
或者,正如@Wrikken所建议的,只需像这样使用chown
:
sudo chown-R www-data/home/crixi/projects/symfony/web/uploads
这取决于您希望如何管理权限。检查您的Web服务器运行的用户和组,检查目录的当前所有者和组是什么。2个基本选项:您
chown
将目录发送给Web服务器用户,或者您chgrp
将目录发送给其组,并授予组对该目录的读/写/列出权限(g+rwx
)。奇怪的是,apache似乎在根目录下运行。。。ev0l。。。。通常我会说先修复它……我只是修复了它,为“其他人”提供了写权限(我知道这不是一个好主意,但我现在只是处于开发模式,所以我想不会有什么不好的事情发生)。我不知道是什么原因,即使apache运行在root上,symfony也运行在其他
上。谢谢您的帮助,请将其作为回复发布,以便能够选择它。