Linux / Nginx · 2023年10月25日

Nginx目录浏览配置,实现文件列表展示

原文:Nginx目录浏览配置,实现文件列表展示-Nginx-PHP中文网

Nginx目录浏览配置,实现文件列表展示

Nginx是一个高性能的HTTP和反向代理服务器,它可以通过安装目录浏览配置实现文件列表展示。在某些情况下,我们可能需要将某个目录中的文件以列表的形式展示给用户,这样用户可以方便地浏览、下载这些文件。本文将介绍如何配置Nginx实现目录浏览,并通过代码示例进行演示。

首先,我们需要修改Nginx的配置文件。常用的配置文件为/etc/nginx/nginx.conf。打开该文件,并找到server段的配置项。在该段配置项中,我们可以添加如下代码来启用目录浏览:

location /path/to/directory {
    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;
}

 

在上述代码中,/path/to/directory是需要展示文件列表的目录路径,请根据实际情况修改。各个参数的含义如下:

  • autoindex on;:该参数表示开启目录浏览功能。
  • autoindex_exact_size off;:该参数表示不显示文件的确切大小,而是以简化的形式展示。
  • autoindex_localtime on;:该参数表示使用本地时间来展示文件的最后修改时间。

在配置完上述代码后,重新加载Nginx的配置文件,命令如下:

    

nginx -s reload

 

接下来,我们通过一个具体的示例来演示Nginx目录浏览配置的使用。

假设我们有一个名为files的目录,该目录下包含了一些文件。我们将在Nginx中配置,以便用户能够访问到该目录,并展示文件列表。

首先,创建files目录并在其中放置一些文件:

$ mkdir files

$ touch files/file1.txt

$ touch files/file2.txt

$ touch files/file3.txt

 

然后,打开Nginx的配置文件,并添加以下代码:

server {

    listen 80;

    server_name example.com;




    location /files {

        autoindex on;

        autoindex_exact_size off;

        autoindex_localtime on;

    }

}

 

保存以上配置,并重新加载Nginx的配置文件。

现在,我们打开浏览器,访问http://example.com/files,就可以看到files目录下的文件列表了。列表将展示文件名称、最后修改时间等信息,如下所示:

Index of /files




[ICO] Name    Last modified    Size    Description

============================================================================

[PARENTDIR] Parent Directory        -   

[file1.txt]   2021-01-01 00:00      -    

[file2.txt]   2021-01-02 00:00      -    

[file3.txt]   2021-01-03 00:00      -

 

通过以上配置,我们已经成功实现了Nginx目录浏览配置,实现了文件列表的展示。

总结:
本文介绍了如何通过修改Nginx的配置文件,实现目录浏览并展示文件列表。通过在location段中添加相关配置参数,可以开启目录浏览功能,并自定义展示的文件信息。用户可以根据实际需求来配置Nginx,实现更加个性化的文件列表展示效果。欢迎大家尝试并发挥创意,打造更好的用户体验!

 

server
{
    listen 80;
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    listen [::]:80;
    server_name xxxxxx.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/xxxx.com;
    ##现实目录
    location /files {
    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;  
    }