我想管理一个 Claroline 网站(基于 Symfony 2)。所以对于我的网站 mysymfony.com 为用户“theclient”安装
1 - 0 我将客户端添加到 www-data 组: adduser theclient www-data
1 - 1 - 修改 /etc/hosts :
127.0.0.1 mysymfony.com
1 - 2 - 创建虚拟主机 /etc/apache2/sites-available/mysymfony.com :
<VirtualHost *:80>
ServerName mysymfony.com
DocumentRoot /var/www/mysymfony.com
<Directory /var/www/mysymfony.com/>
Options -Indexes
AllowOverride all
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>
1 – 3 - 激活:a2ensite mysymfony.com
1 – 4 - 重新加载服务器:service apache2 reload
1 - 5 - 链接到 var/www :
ln -s /home/theclient/www/mysymfony.com/ /var/www/mysymfony.com
然后作为根我:
1 – 6 - 更改所有权:chown -hR theclient:www-data /home/theclient/www/mysymfony.com
1 – 7 - 更改权限:chmod -R 755 /home/theclient/www/mysymfony.co
m 以及可以写入的目录和文件:
chmod 775 app/cache/ app/logs/ app/config/ files/ templates/ vendor/ web/
chmod -R 775 app/cache/ app/logs/ vendor/ web/
chmod 775 composer.json composer.lock app/config/bundles.ini app/config/parameters.yml app/config/platform_options.yml
使用此配置,我可以正确安装网站(使用基于 webinstaller 或控制台的)。
如果我以 root 身份安装插件,插件目录、其内容、所有 Symfony 配置文件和缓存文件都是 root:root => 我需要重做一个:chown -hR theclient:www-data /home/theclient/www/mysymfony.com
上传的文件属于 www-data:www-data (这是预期的,但对于来自用户 theclient 的脚本不实用。刷新缓存时会发生相同的文件/目录所有权“问题”(以 root 身份)
所以这不是一个错误,但如果我希望能够每天管理这个站点(开发/尝试/安装插件,刷新缓存,升级......)
所以我的问题是你能提供一种“精确”的方式来设置这种网站(权利/所有权、管理......)吗?
除了初始设置之外,是否应该在那里使用“chown”和“chmod”?谢谢