我的 Web 开发经验始于 Fedora 和 RHEL,但我正在转向 Ubuntu。在 Fedora/RHEL 中,默认使用 /var 文件夹,而 Ubuntu 使用 /srv。
有什么理由使用其中一个而不是另一个,并且线路在哪里分割?(这让我很困惑,直到最近,我还以为 /srv 是服务器/服务的 /svr)
我主要关注的是两种类型的文件夹
- 默认 www 和 ftp 目录
- 特定的应用程序文件夹如:
- samba 共享(可能分组在 smb 文件夹下)
- web 应用程序(这些应该放在 www 文件夹中,还是我可以对其自己的目录进行符号链接,如“___/www/wordpress”->“/srv/wordpress”)
我正在寻找最佳实践、行业标准以及哪种方法最好(或至少为什么它受到青睐)的定性原因。
答案1
这源于最低有效位它表示“/var
包含可变数据文件。这包括假脱机目录和文件、管理和日志数据以及瞬态和临时文件。” 但是它表示/srv
:“/srv
包含由该系统提供服务的站点特定数据。”
SuSE 是我使用的第一个保留 webroot 的发行版之一/srv
- 通常用于 Debian/Ubuntu/RHEL /var/www
- 但请注意,如果您使用 yum 或 apt 安装 Web 应用程序,那么它们很可能最终会进入/usr/share
。此外Fedora 的打包指南说“一旦用户安装并配置了包,就可以将其用作/srv
数据的位置。包根本不能在开箱即用的情况下执行此操作”。
经过权衡,我认为应该保留/var/www
- 或者您可以通过创建/var/www
指向 的符号链接来同时执行这两项操作/srv/www
。我知道在我构建的 Oracle RDBMS 系统上,我经常创建指向 的/u01
/u02
符号链接等/home/oracle
。原因是许多 DBA 希望在 /u01 中找到内容,而其他许多人则希望/home/oracle
。系统管理员通常也是如此 - 有些人会本能地查看/var/www
,有些人会查看 ,/srv/www
而其他人(例如我)会 grep apache 配置DocumentRoot
。
希望这能为您提供一些指导。