Locate the Nginx.conf File My Nginx Is Actually Using

Better Stack Team
Updated on October 7, 2024

To locate the nginx.conf file that your Nginx server is actually using, you can follow these steps:

1. Check the Nginx Process

The Nginx process usually has a command line that shows the path to the configuration file it's using. You can check this by using the ps command.

Command:

 
ps aux | grep nginx

Explanation:

  • This command lists all processes related to Nginx.
  • Look for the master process, which often includes the path to the nginx.conf file in its command line arguments.

2. Use the nginx Command

You can also use the Nginx command-line tool to find the path of the configuration file.

Command:

 
nginx -t

Explanation:

  • The t flag tests the configuration for syntax errors and prints the configuration file path.
  • Look for a line in the output like:

     
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    

Alternate Command:

 
nginx -V

Explanation:

  • The V flag shows the version of Nginx and configuration options.
  • Look for a line that includes -conf-path= which indicates the path to the nginx.conf file.

3. Check Common Locations

If the above methods do not work, check these common locations where Nginx typically stores its configuration file:

  • Default location on Debian/Ubuntu:

     
    /etc/nginx/nginx.conf
    
  • Default location on CentOS/RHEL/Fedora:

     
    /etc/nginx/nginx.conf
    
  • Alternative locations:

     
    /usr/local/nginx/conf/nginx.conf
    /usr/local/etc/nginx/nginx.conf
    

4. Check the Nginx Service File

If Nginx is running as a service, the service configuration file might specify the path to the nginx.conf file.

Command to find the service file location:

 
systemctl show -p ExecStart nginx

Explanation:

  • This command shows the ExecStart parameter, which typically includes the path to the Nginx binary and may include configuration file options.

Sometimes the nginx.conf file might be a symbolic link. You can use the ls -l command to check for symbolic links in common configuration directories.

Command:

 
ls -l /etc/nginx/

Explanation:

  • This command lists files and directories in /etc/nginx/, showing if nginx.conf is a symbolic link to another location.

Summary

To locate the nginx.conf file that your Nginx server is using:

  1. Check Nginx Process: Use ps aux | grep nginx to find the configuration file path.
  2. Use Nginx Command: Run nginx -t or nginx -V to display the configuration file path.
  3. Check Common Locations: Look in /etc/nginx/nginx.conf or alternative locations.
  4. Check Service File: Use systemctl show -p ExecStart nginx to find configuration options.
  5. Look for Symbolic Links: Use ls -l /etc/nginx/ to check for symbolic links.

By following these steps, you should be able to identify the exact nginx.conf file that your Nginx instance is using.

Got an article suggestion? Let us know
Licensed under CC-BY-NC-SA

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Make your mark

Join the writer's program

Are you a developer and love writing and sharing your knowledge with the world? Join our guest writing program and get paid for writing amazing technical guides. We'll get them to the right readers that will appreciate them.

Write for us
Writer of the month
Marin Bezhanov
Marin is a software engineer and architect with a broad range of experience working...
Build on top of Better Stack

Write a script, app or project on top of Better Stack and share it with the world. Make a public repository and share it with us at our email.

community@betterstack.com

or submit a pull request and help us build better products for everyone.

See the full list of amazing projects on github