Symfony 3.4 Apache权限WebServer无法在不可写的文件夹

时间:2018-06-01 12:03:36

标签: apache symfony chmod chown

我正在使用Apache WebServer而不是内置的webserver运行Symfony,以便按照官方说明从dev切换到生产环境: https://symfony.com/doc/current/setup/web_server_configuration.html

当我尝试将图片上传到我的网站文件夹时,我得到了

Unable to write in the 
"/var/www/html/site/src/../public/front/cms/explanatory_rubric" directory

当我使用Symfony内置服务器运行时,使用端口8000它正在工作,我的文件夹是可写的。 我知道Apache Permissions有问题。关于这一点有很多问题,我仔细阅读了每一个问题,特别是this one,解释了有关Apache的文件权限的良好做法,以及this onethis onethis one ,和this one

当我检查我的chmod所有者不可写文件夹时,我得到:

ls -l
total 4
drwxr-xr-x 3 root www-data 4096 Jun  1 11:38 explanatory_rubric

我将文件夹的chmod所有者从www-data更改为root以给出 写权限。

我还尝试通过我的Apache配置文件授予权限。

这是我对SSL的Apache配置:

<IfModule mod_ssl.c>
<VirtualHost *:443>

    ServerName www.mysite.com

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    <Directory /var/www/html/site/public>
         AllowOverride All
         Order Allow,Deny
         Allow from All
    </Directory>


    <Directory /var/www/html/site/public/front/cms/explanatory_rubric>
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>

1 个答案:

答案 0 :(得分:1)

解决: 我将ubuntu中的chown更新为www-data,并将chmod权限授予特定文件夹: 我还注意到 symfony / apache-pack 包中的 index.php 我们可以 找到一个 umask(000),这可能是我烦恼的根源

我的解决方法是:

chown www-data:www-data -R /my/folder # with Apache2
chown apache:apache -R /my/folder # with Apache
chmod -R 777 /my/folder