更改DocumentRoot
用户Home
目录中某个文件夹的路径是否安全?
或者最好保持原样并在您的用户和 Apache 服务器之间使用共享组,如您在以下解决方案中看到的那样:处理 /var/www 中 Apache 2 用户 www-data 权限的最佳方法是什么?
我读过一两篇文章,我的解决方案如下:
仅为 Apache创建一个新的
user
和一个新的(理想情况下,限制该用户的 shell 访问)group
将
httpd.conf
用户和组指令更改为新创建的user
和group
Home
在您的目录中为您的网站创建新文件夹,例如Websites\Project1\public_html
public_html
将 的所有权更改为user
先前创建的group
设置
chmod 2775
(使用 SETGID)文件夹和chmod 664
文件(如果需要,则递归)放
umask 0002
group
最后,在第一步中将自己添加到created
答案1
最好的方法(我的观点)是使用不同的 apache 用户(www-data、apache)并使用以下方法:
创建一个包含您网站子目录的 FTP 位置。将此位置 chroot。为了便于跟踪,如果用户超过 1 个,我会使用不同的用户。
设置一个 cronjob(/etc/crontab,由 apache 用户执行),并附上脚本,每隔几分钟扫描目录以查找新内容。如果发现新内容,则让其对 ftp 端找到的文件的 apache 端文件(文件名中包含用户名和时间戳的压缩 tar 文件)进行备份。
让 cronjob 复制文件。您可以用一封确认邮件来完成此操作,确认此操作是由“用户”完成的,并包含一些
diff
差异。
如果出现问题,你可以
- 追踪是谁干的。
- 这个人做了什么。
- 撤销他所做的事。
不要使用 documentroot 进行开发。1 个拼写错误就可能导致网站瘫痪,然后必须有人找到这个拼写错误并进行修复。