我应该在 /opt 还是 /srv 中安装自定义 Web 应用程序?

lof*_*ops 5 fhs software-installation web

我的理解是自定义/非发行版软件应该安装在/opt. 然而,在 Django 部署教程 [ 1 ] 中,我发现了一个安装 Django Web 应用程序的建议,/srv该应用程序被描述为包含由系统提供的特定于站点的数据

非发行版 Web 应用程序应该安装在/opt或中吗/srv

zep*_*lin 1

根据 FHS 的说法,/srv它适用于特定于站点的数据,而不是软件包(并且是/var这方面的新替代方案)

/srv 包含由该系统提供的站点特定数据

但是,如果您正在使用(例如)Apache 运行 Django Web 应用程序,则您的 Web 应用程序可以被分类为它的数据,因此它应该转到/srv/(就像您将其部署到/var/www旧系统上一样)。

FHS 确实明确暗示了这一点:

可写数据和脚本(如cgi脚本)可以合理放置