有关nginx+php-fpm配置文件的组织结构

时间:2022-10-20 15:24:49
有关nginx+php-fpm配置文件的组织结构的相关内容,供大家参考。

有关nginx+php-fpm配置文件的组织结构的相关内容,供大家参考。

一、nginx的配置文件路径
一般来说,安装nginx的时候,配置文件的默认路径是 /usr/local/nginx/conf/nginx.conf。
我们可以使用一个链接文件,将conf目录指向一个特定目录,以方便管理。例如,笔者所在的公司喜欢将所有的服务器配置文件集中在/home/server_config中,然后在该目录中新建一个子目录 nginx,再将/usr/local/nginx/conf 通过链接文件指向/home/server_config/nginx。

二、Virtual host的配置文件路径
通常,笔者所在的公司会把每个Virtualhost的配置文件写成一个独立的文件。这些独立的文件独立在不同的项目中。
但有个技巧,可以在nginx.conf所在的目录下,建一个子目录include,在include目录下,是一系列的链接文件,这些文件指向了Virtualhost的配置文件。

三、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实例即可。

四、各个pool的配置文件路径
可以自行指定。但一般地,我们会将其集中管理。笔者选择将其放在/var/run下,并针对每个实例建一 个文件夹,文件夹中除了放php-fpm外,还会放对应pid文件,以及对应的unix:socket文件。