我如何更改 nginx 配置文件路径

我如何更改 nginx 配置文件路径

我已经在ubuntu16.04中安装了nginx,并检查配置文件位置是/etc/nginx/conf/nginx.conf

$ /usr/sbin/nginx -V 2>&1 | grep --colour=auto conf

然后显示配置文件路径:

 --conf-path=/etc/nginx/nginx.conf

我正在安装打开 nginx Webagent 关联, 这nginx_agent有一个nginx.conf文件

nginx_web_agent安装路径:

   /opt/nginx_agent

nginx_web_agent nginx.conf路径:

   /opt/nginx_agent/conf/nginx.conf

nginx_web_agent 使用nginx.conf文件,

我该如何更改 nginx默认 nginx.conf文件到nginx_web_agent nginx.conf文件

例如:

nginx 配置使用/opt/nginx_agent/conf/nginx.conf代替/etc/nginx/nginx.conf

建议我我该怎么做?

答案1

/usr/sbin/nginx -V显示初始配置脚本参数,不一定是正在运行的实际参数。

要使用备用配置文件(而不是默认配置文件),可以设置标志-c手动 nginx):

/usr/sbin/nginx -c /opt/nginx_agent/conf/nginx.conf

Ubuntu 16.04 使用systemd管理服务,因此您需要更改服务systemd参数nginx

  1. 编辑/lib/systemd/system/nginx.service
  2. 在需要的地方添加-c标志:

    ExecStartPre=/usr/sbin/nginx -t -c /opt/nginx_agent/conf/nginx.conf -q -g 'daemon on; master_process on;'
    ExecStart=/usr/sbin/nginx -c /opt/nginx_agent/conf/nginx.conf -g 'daemon on; master_process on;'
    ExecReload=/usr/sbin/nginx -c /opt/nginx_agent/conf/nginx.conf -g 'daemon on; master_process on;' -s reload
    
  3. 重新加载systemd管理器配置: systemctl daemon-reload

  4. 启动nginx服务:

    service nginx start
    
  5. 检查nginx服务参数:

    systemctl status nginx.service
    
    ...
    2411 nginx: master process /usr/sbin/nginx -c /opt/nginx_agent/conf/nginx.conf -g daemon on; master_process on
    ...
    

这就是我要做的事情。

相关内容