0%

Nginx配置目录

Nginx配置目录

请不要将所有配置写入/etc/nginx/nginx.conf中。

首先,这篇文章是为了解决一个对初次接触nginx的运维人员常会出现的不太好的习惯:
总是将配置文件写入nginx.conf中。

首先,为什么新手会将所有配置写入nginx.conf,因为如果没有其他人的引导,在网上搜索资料时,给出的答案基本都会是直接的配置文件修改,但一般不会提到在哪里,为什么修改这个文件。

sites-available与sites-enabled (Ubuntu下的nginx默认生成)

给出使用方法:

在sites-available中存放实际的配置文件(不需要.conf后缀),同时将需要激活的配置文件软链接到sites-enabled下。

说明:

sites-available添加配置,sites-enabled激活配置。

/etc/nginx目录下有两个子目录,分别是sites-availablesites-enabled,默认在sites-available中有一个默认的配置文件default,同时,在sites-enabled存放了这个default配置文件的软链接。

通过查看nginx.conf,可以找到下面一个配置:

include /etc/nginx/sites-enabled/*;

将在sites-enabled中所有的配置文件导入,所以,当需要配置站点时,可以在sites-enabled下为每一个站点添加单独的配置文件,但是,不建议直接在sites-enabled下直接创建配置文件,通用方法时,在sites-available创建配置文件(sites-available下的配置文件默认不会被应用),然后,将需要激活的配置软链接到sites-enabled,这样,即增加了配置的灵活性,同时可以保留配置文件。

snippets/snakeoil.conf (Ubuntu下的nginx默认生成)

主要用于证书存放

建议在snippets下创建一个与域名同名的配置文件,如为域名domain.comsnippets创建一个domain.com.conf配置文件用于指向证书与密钥,然后在域名的配置文件下添加配置include snippets/domain.com.conf;

扩展

证书颁发