nginx+php-fpm配置文件的组织结构介绍
程序员文章站
2022-03-31 22:09:44
1.nginx的配置文件路径 一般来说,安装nginx的时候,配置文件的默认路径是 /usr/local/nginx/conf/nginx.conf。 我们可以使用一个链接...
1.nginx的配置文件路径
一般来说,安装nginx的时候,配置文件的默认路径是 /usr/local/nginx/conf/nginx.conf。
我们可以使用一个链接文件,将conf目录指向一个特定目录,以方便管理。例如,笔者所在的公司喜欢将所有的服务器配置文件集中在/home/server_config中,然后在该目录中新建一个子目录 nginx,再将/usr/local/nginx/conf 通过链接文件指向/home/server_config/nginx。
2.virtual host的配置文件路径
通常,笔者所在的公司会把每个virtualhost的配置文件写成一个独立的文件。这些独立的文件独立在不同的项目中。
但有个技巧,我们可以在nginx.conf所在的目录下,建一个子目录include,在include目录下,是一系列的链接文件,这些文件指向了virtualhost的配置文件。
3.php-fpm的配置文件路径
通常的,php-fpm的执行文件在php安装路径下的sbin目录中。(在这里,有个题外话,安装php时,安装目录一般默认为/usr/local,这并非一个好的选择,因为有的时候,一台服务器上可能需要同时存在多种版本的php。一个良好的 实现是将不同版本的php分别安装在/usr/local/php-xxx/中,xxx代表php的版本)。
而php-fpm的配置文件则默认放在php安装路径下的etc目录中。但事实上,php-fpm的配置文件可以在启动php-fpm时 指定路径,不同的php-fpm实例可以指定不同的配置文件。而这也具有现实意义:在一台服务器上nginx可能同时监听 着多个virtualhost,当重启某个host的时候,只需重启对应的php-fpm实例即可。
4.各个pool的配置文件路径
可以自行指定。但一般地,我们会将其集中管理。笔者所在的公司则选择将其放在/var/run下,并针对每个实例建一 个文件夹,文件夹中除了放php-fpm外,还会放对应pid文件,以及对应的unix:socket文件。
一般来说,安装nginx的时候,配置文件的默认路径是 /usr/local/nginx/conf/nginx.conf。
我们可以使用一个链接文件,将conf目录指向一个特定目录,以方便管理。例如,笔者所在的公司喜欢将所有的服务器配置文件集中在/home/server_config中,然后在该目录中新建一个子目录 nginx,再将/usr/local/nginx/conf 通过链接文件指向/home/server_config/nginx。
2.virtual host的配置文件路径
通常,笔者所在的公司会把每个virtualhost的配置文件写成一个独立的文件。这些独立的文件独立在不同的项目中。
但有个技巧,我们可以在nginx.conf所在的目录下,建一个子目录include,在include目录下,是一系列的链接文件,这些文件指向了virtualhost的配置文件。
3.php-fpm的配置文件路径
通常的,php-fpm的执行文件在php安装路径下的sbin目录中。(在这里,有个题外话,安装php时,安装目录一般默认为/usr/local,这并非一个好的选择,因为有的时候,一台服务器上可能需要同时存在多种版本的php。一个良好的 实现是将不同版本的php分别安装在/usr/local/php-xxx/中,xxx代表php的版本)。
而php-fpm的配置文件则默认放在php安装路径下的etc目录中。但事实上,php-fpm的配置文件可以在启动php-fpm时 指定路径,不同的php-fpm实例可以指定不同的配置文件。而这也具有现实意义:在一台服务器上nginx可能同时监听 着多个virtualhost,当重启某个host的时候,只需重启对应的php-fpm实例即可。
4.各个pool的配置文件路径
可以自行指定。但一般地,我们会将其集中管理。笔者所在的公司则选择将其放在/var/run下,并针对每个实例建一 个文件夹,文件夹中除了放php-fpm外,还会放对应pid文件,以及对应的unix:socket文件。