在 CentOS 中 Web Root 应该放在哪里?/var/www/ 还是 /home/user/public_html/?

在 CentOS 中 Web Root 应该放在哪里?/var/www/ 还是 /home/user/public_html/?

我们的旧服务器将其放在 /home/user/public_html/ 中,但将其放在 /var/www/ 中似乎更有意义。

旧服务器有 cpanel,我认为作为该设置的一部分,它将虚拟服务器分成 /home/ 中的各自文件夹,并为每个文件夹提供 Web 根目录。/home/user/ 中的所有文件也归用户所有,而不是归 root 所有。

但是我们没有子账户,而且我习惯在 /var/www/ 中创建各种虚拟主机(根据我的 Ubuntu 经验),那么在 CentOS 中只使用 /var/www/ 有什么缺点吗?然后,我将拥有一个包括我和其他开发人员在内的组所拥有的所有文件。

答案1

我看不出有什么区别。将其放在具有相同所有者的 /var/www 或 /home/USER/www 中具有完全相同的安全级别。

但是问题很令人困惑:您没有子帐户,但您有 vhost 和其他开发人员。这些开发人员与您共享同一个帐户,还是各自在同一个组中拥有一个帐户?在这种情况下很难管理。我认为您需要一个部署系统:开发人员使用 git/subversion,在服务器中,您使用一个工具(它可能只是一个简单的 shell 脚本执行svn upgit pull),以便这些 Web 应用程序的所有文件都在唯一用户下。

答案2

切勿将任何系统关键内容放在 /home 下。我说的是 /var/www。

编辑:回应 Butthle 的评论,我承认这是对我原本正确的答案的公正批评,强调我的回答:

FHS(Linux 文件系统层次结构 v 2.3,第 3.8 节)PDF 链接

3.8. /home:用户主目录(可选)

3.8.1. 目的 /home 是一个相当标准的概念,但它显然是一个特定于站点的文件系统。

设置将因主机而异。因此,任何程序都不应依赖此位置

答案3

/var/www 是 CentOS(5 及更高版本)的默认根目录。我能想到的唯一区别在于维护(如果使用 /var/www,维护会稍微容易一些)

答案4

你想把它放在哪里?我有一台机器,上面两个位置都有网络文件(原因不重要)。只要你配置并记录一切正确,没关系。

相关内容