我有一个Debian 6 VPS,我想为自己和朋友托pipe几个站点。 在我们的主目录(如/home/user/sites/mysite.com)中托pipe我们自己的站点并将其创build为虚拟主机是一个好主意吗?
我是否必须让www-data帐户也成为“用户”组的一部分,以便它能够执行/创build目录,例如wordpress?
或者你会推荐,而不是我们托pipe的网站/ var / www /?
任何意见或build议将不胜感激,因为我是埃格学习一个简单/有效的方式来实现这一点。
主目录中的主目录不是不安全的; 所有你需要做的就是把用户的主目录设置为允许Apache在那里,这在任何有意义的意义上都不是安全风险。 为了获得更好的安全性,请为任何dynamic内容创build单独的用户,因此,一个dynamic网站中的安全问题不会为您的所有其他网站带来污损风险。
另外,不要对任何运行多个站点的系统使用mod_php ,因为(你注意到)你需要玩有权限的游戏,使得networking服务器能够写dynamic生成的内容。 相反,使用像suPHP(或FCGI或一般CGI内容的suExec)来运行每个用户的PHP代码,而不是作为Web服务器。 这提供了更好的隔离性, 并避免了复杂的权限游戏的需要(比如将www-data放在users组中,这只是不洁净的)。
出于安全原因,最好将文件放在/ home目录之外。 您将无法在不更改/ home目录权限的情况下阅读目录/home/user/sites/mysite.com。 你可能做的是做一个符号链接例如:
/var/www/html/user1 -> /home/user1/sites
而你的DocumentRoot将会是/ var / www / html / user1和allowymlinks标志。