Nginx - 我真的需要网站可用和网站启用的文件夹吗?

时间:2016-12-23 15:17:23

标签: nginx

我已经搜索了Stack Overflow的直接答案,但还没找到。我注意到我的nginx安装有三个名为

的文件夹
etc/nginx/sites-available
etc/nginx/sites-enabled
etc/nginx/conf.d

如果我只想直接在etc/nginx/nginx.conf文件中工作并删除include中包含这些项目的nginx.conf行,是否真的需要这些?这些目录是否用于其他任何会在我删除它们时会搞砸的内容?

4 个答案:

答案 0 :(得分:9)

不,如果您在nginx.conf中正确定义服务器块,则不需要它们,但强烈建议。正如您所注意到的,它们仅用于nginx.conf中的Outer text with [some random text title="My Title Here"], and more text

为了好奇,你有没有理由不想使用它们?它们非常有用;更容易添加新网站,禁用网站等。而不是有一个大的配置文件。这是nginx文件夹布局的最佳实践。

答案 1 :(得分:1)

这不是必须的,但如果您在盒子上托管多个网站,这是最佳做法。

通过在nginx.conf上保留http上下文和通用指令(例如ssl_dhparam,ssl_ciphers,甚至gzip设置等)以便在所有站点上应用它将更容易管理。

在etc / nginx / sites-available /上保留特定于站点的服务器上下文(例如ssl-certificate,location directive等),并将配置文件命名为your-domain.conf。 etc / nginx / sites-enabled中的文件只是指向etc / nginx / sites-available文件的链接。

答案 2 :(得分:1)

您不需要,但您应该使用它

您应该在sites-available目录中编辑文件。

永远不要编辑sites-enabled目录中的文件,否则如果编辑器内存不足或者出于任何原因,它会收到SIGHUP或SIGTERM,则可能会出现问题。

例如:如果您使用nano编辑文件sites-enabled/default并且内存不足,或者出于任何原因,它会收到SIGHUP或SIGTERM,那么nano将会在default.save目录中创建名为sites-enabled的紧急文件。因此,sites-enabled目录中会有一个额外的文件。这将阻止Apache或NGINX启动。如果您的网站正常运行,它将不再存在。您将很难在日志中找到与default.save文件相关的内容,然后将其删除。

在上面的示例中,如果您正在编辑sites-available目录中的文件,则不会发生任何错误。文件sites-available/default.save已经创建,但它不会对sites-available目录造成任何伤害。

答案 3 :(得分:1)

我在NGINX The Complete NGINX Cookbookofficial site中看到了下面的评论!

/etc/nginx/conf.d/目录包含默认的HTTP 服务器配置文件。该目录中以.conf结尾的文件 包含在/ etc /中的顶级http块中 nginx / nginx.conf文件。最佳做法是利用 并以这种方式组织您的配置,以保持您的 配置文件简明扼要。 在某些软件包存储库中,此 文件夹被命名为启用站点,并且配置文件已链接 从名为site-available的文件夹中;此约定已弃用。