我应该在哪里放置我的网站根目录“my_site”? 任何最佳做法?
/var/www/my_site/ /var/local/sites/my_site/ /usr/share/wwww/my_site/ /usr/local/my_site/ /opt/my_site/ /srv/my_site/
没有最好的地方来放置它。 这是一个偏好的问题。
把它放在/var/www是相当常见的。 我使用/var/www/sites/<vhost> 。
把它放在别人之下并不常见。
我个人不会把它放在/usr/share 。
只要确保你一直把它放在同一个地方。 如果最终pipe理数十个或数百个Web服务器,并且DocumentRoot因服务器而异,则您将遇到不愉快的时间。
没有硬编码的首选项设置在任何特定的目录下。
我更喜欢/home/acountname/public_html保留所有网站相关的数据,如果我在一台服务器上托pipe多个网站,因为我把帐户名称作为business or user or client我主办的网站的business or user or client 。
如果您仅托pipe一个网站,最受欢迎的文档根目录是/var/www/html/和/var/www/sites/ 。
你可以放在任何地方,根据你的需要。 但是,当然没有人会build议把它放在/usr/share/ 。
实践有所不同,我认为没有什么普遍的共识, 或者说这个共识足够重要,因为那里真的是“最好的”。
发行版倾向于默认为/var/www ,如果将/var解释为“可写入的系统数据”,这是有意义的。 许多人只是遵循这个默认,把自己的东西放在那里。
其他人(并且这通常是15年前的发行版默认)使用/home/www或类似的,紧邻任何用户主目录。 我认为这通常被认为不是最佳实践,因为用户和服务器应用程序数据的策略通常是非常不同的,并且可能有与该服务相关联的用户不应该具有对这些文件的写入访问权限,并且总体上看起来像一个凌乱的名字空间的使用。
/usr/share通常也不是一个好主意,因为现代发行版/usr (除了/usr/local )是应该由发行版软件包pipe理器控制的地区,而不是以其他方式写的。
在积极的方面: 文件系统层次结构标准指定/srv基本上专门为此目的:
/ srv包含由该系统提供的特定于站点的数据。
和
/ srv应始终存在于符合FHS的系统上,并应作为此类数据的默认位置。
所以,如果你真的想要一个标准,那就有一个。 就我个人而言,我喜欢这一点,并发现它使备份策略更容易。 (大部分的/var是暂时的variables数据,至less只要你把实际的“业务”数据放在/srv ,就不需要长时间保留)。
没有一个“正确”的地方,但试图尊重分配习惯并不是一个坏主意。 根据FHS和其他来源,程序拥有和pipe理的数据属于6个不同的文件夹:
根据这些描述,网站应该去/ srv / www,但debian系统不使用它。 他们用/ var来代替(/ var / www,/ var / mail等等)。