SoFunction
Updated on 2025-05-20

Using Nginx configuration file server

1. Why choose Nginx as the file server?

Nginx has become a widely used web server due to its high performance, low memory consumption and high concurrency processing capabilities.

Not only can it handle dynamic requests, it can also provide fast access to static resources.

Using Nginx as a file server is especially suitable for small file sharing, document download and other scenarios.

2. Environmental preparation

First, make sure you have Nginx installed. If not, you can use the official website of Nginx () Download the compressed package suitable for Windows system.

step:

  • Download the Nginx installation package and unzip it to the local directory, e.g.C:/nginx
  • Ensure Nginx's execution fileexist.

3. Configure the Nginx file server

ReviseConfiguration file:

Nginx configuration filelie inC:/nginx/conf/, we need to modify it to make Nginx as the file server.

  • OpenConfiguration file.
  • existserverAdd one to the blocklocationConfigure to specify static file directories and enable directory browsing.

Sample configuration:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       ;
    default_type  application/octet-stream;

    server {
        listen       80;
        server_name  localhost;

        #Configuration file server path        location /files/ {
            alias C:/nginx/files/;  # Use alias to specify file directory            autoindex on;           # Enable directory browsing            autoindex_exact_size off;  # Show file size (but not precise to bytes)            autoindex_localtime on;    # Show the local time of the file        }

        # Default homepage settings        location / {
            root   html;
            index   ;
        }
    }
}

Configuration parsing:

  • alias C:/nginx/files/;: Instruct Nginx tohttp://localhost/files/Request to map toC:/nginx/files/Table of contents.
  • autoindex on;: Enable directory browsing function. When visiting/files/Nginx lists all files in the directory.
  • autoindex_exact_size off;: Displays the file size, but is not accurate to bytes.
  • autoindex_localtime on;: Displays the local time of the file.

4. Put the file into the server directory

existC:/nginx/Create a directoryfilesand put the file you want to provide downloads into it.

For example, put some PDF files, images, or other resources inC:/nginx/files/middle.

5. Start Nginx

After the configuration is complete, we need to start the Nginx server.

Open a command prompt, enter the Nginx installation directory, and execute the following command to start Nginx:

cd C:/nginx
start nginx

If Nginx is already running, you can reload the configuration to apply the modification:

nginx -s reload

6. Access the file server

Open a browser and accesshttp://localhost/files/, you should be able to seeC:/nginx/files/List of files in the directory.

If there are multiple files in the directory, Nginx will automatically display them. You can click on these files to download.

7. Advanced configuration (optional)

7.1 Add access control

If you want simple authentication for file access, you can use Nginx'sauth_basicConfigure to protect file directories.

location /files/ {
    alias C:/nginx/files/;
    autoindex on;
    auth_basic "Restricted Access";
    auth_basic_user_file C:/nginx/.htpasswd;  # Use .htpasswd file for basic authentication}

This configuration requires the user to enter a username and password to access the file directory.

You can usehtpasswdTool generation.htpasswddocument.

7.2 Limit file download size

You can also limit the download size of files through Nginx configuration. For example:

http {
    client_max_body_size 10M;  # Restrict file uploads up to 10MB}

8. Frequently Asked Questions and Solutions

8.1 404 Error

If you encounter a file while accessing404 Not FoundError, first check the configuration filealiasorrootIs the path correct?

make sureC:/nginx/files/The directory exists and contains the files you want to access.

8.2 Firewall Problems

Make sure that Windows firewall or other security software does not block access to port 80.

You can temporarily disable the firewall to test whether the access is normal.

8.3 Not effective after configuration changes

Each modificationAfter the configuration file, remember to passnginx -s reloadReload the Nginx configuration, otherwise the modification will not take effect.

Summarize

By using the Nginx configuration file server, we can easily build an efficient and concise file sharing platform.

Whether it’s sharing documents, providing downloads, or other static file services, Nginx provides you with excellent performance and stability.

With just a few simple steps to configure, you can enjoy the convenience of a static file server!

The above is personal experience. I hope you can give you a reference and I hope you can support me more.