找到nginx服务用的是哪个配置文件

背景

在工作中会碰到一台服务器安装了多个nginx的服务的情况。
Nginx的主配置文件有的在/etc/nginx/nginx.conf而有的在/usr/local/nginx/conf/nginx.conf,还有很多情况配置文件在很多自定义的位置。找到主配置文件后,通过查看主配置文件的内容就可以找到子配置文件了。

问题点

当前nginx服务的主配置文件具体是哪个呢?

一.nginx进程用的哪个主配置文件的方法

方法1适合找到没有用默认配置文件的情况发,方法2适合找到默认配置文件的情况

方法1:部分情况通过ps -ef | grep nginx能直接找到

示例如下,master进程中直接列出了nginx的主配置文件。

[root@vm22 ~]# ps -ef | grep  nginx
root      1703     1  0 20:44 ?        00:00:00 nginx: master process nginx -c /etc/nginx/nginx.conf
nginx     1704  1703  0 20:44 ?        00:00:00 nginx: worker process
nginx     1705  1703  0 20:44 ?        00:00:00 nginx: worker process
root      1708  1548  0 20:44 pts/0    00:00:00 grep --color=auto nginx
方法2:nginx -t查看默认的nginx配置文件路径
#步骤1  找到nginx的主进程id,如下pid为1863
[root@vm22 ~]# ps -ef | grep nginx
root      1863     1  0 21:00 ?        00:00:00 nginx: master process /usr/sbin/nginx
nginx     1864  1863  0 21:00 ?        00:00:00 nginx: worker process
nginx     1865  1863  0 21:00 ?        00:00:00 nginx: worker process
root      1868  1548  0 21:00 pts/0    00:00:00 grep --color=auto nginx

#步骤2  找到1863进程启动nginx的绝对路径
如下exe的这一行可看到nginx的绝对路径为/usr/sbin/nginx
[root@vm22 ~]# ll /proc/1863  # 其中1863为步骤1查出来的pid
....忽略部分内容....
lrwxrwxrwx  1 root root 0 4月  30 21:02 exe -> /usr/sbin/nginx
....忽略部分内容....

说明:这次举例其实步骤1已经知道了nginx的绝对路径,步骤2有些情况会用的到。有些时候电脑装了多个nginx,而且步骤1看不到绝对路径时可以用步骤2来找绝对路径。

#步骤3  找到nginx主配置文件,如下命令的输出
[root@vm22 ~]# /usr/sbin/nginx -t  # 其中/usr/sbin/nginx为步骤2查出来的绝对路径
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

二.查看nginx主配置文件都include了哪些子配置文件

grep include 主配置文件,如下实例

[root@vm22 ~]# grep include  /etc/nginx/nginx.conf
include /usr/share/nginx/modules/*.conf;
    include             /etc/nginx/mime.types;
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/default.d/*.conf;
#        include /etc/nginx/default.d/*.conf;  #注意此行前面有注释
[root@vm22 ~]#

找到主配置文件和子配置文件后,就可以愉快的查看和修改配置文件,愉快的板砖啦!

查看nginx启动的配置文件可以通过多种方法,以下是一些常用的方法: 1. 查看nginx进程参数 在Linux系统中,可以使用`ps`命令查看nginx进程的启动参数。可以通过执行以下命令: ```sh ps -ef | grep nginx ``` 这将列出所有相关的进程,包括启动nginx的命令行。通常,配置文件的路径会在命令行参数中显示。 2. 查看nginx的默认配置文件 如果你是按照常规方式安装nginx,它可能使用了默认的配置文件。在大多数Linux发行版中,默认配置文件通常位于`/etc/nginx/nginx.conf`。你可以直接查看该文件来确认使用的配置: ```sh cat /etc/nginx/nginx.conf ``` 或者在nginx配置文件夹中查找,通常还会有一个`sites-enabled`目录,里面包含实际使用的站点配置文件。 3. 使用nginx命令行 nginx提供了命令行选项来显示它的配置信息。可以使用以下命令来检查配置文件的路径: ```sh nginx -T ``` 执行这个命令后,nginx会显示包括配置文件在内的所有配置信息,并在最后显示配置文件的路径。请确保在合适的用户权限下运行此命令,因为nginx可能在不同权限级别下运行。 4. 查看nginx的错误日志 错误日志通常也会记录nginx使用配置文件信息。错误日志的位置可以在`nginx.conf`中找到,通常的路径是`/var/log/nginx/error.log`。你可以使用以下命令查看错误日志文件: ```sh cat /var/log/nginx/error.log ``` 或者使用如下命令直接查看最近的日志: ```sh tail -f /var/log/nginx/error.log ``` 以上方法可以帮助你确定nginx服务是基于哪个配置文件启动的。需要注意的是,如果你的nginx服务是在容器中运行或者有特定的启动脚本,那么还需要查看对应的启动脚本或容器配置来确定确切的配置文件路径。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值