选择皮肤
jiang
2023-01-25 03:57:31
jiang\n楼主

配置 Nginx 的目录浏览功能

要开启 Nginx 的目录浏览功能很简单,只需要打开 nginx.conf 或者对应的虚拟主机配置文件,在 server 或 location 段里面中上
autoindex on;
就可以了。

autoindex_exact_size on;
# 默认为 on,以 bytes 为单位显示文件大小;
# 切换为 off 后,以可读的方式显示文件大小,单位为 KB、MB 或者 GB。

autoindex_localtime on;
# 默认为 off,以 GMT 时间作为显示的文件时间;
# 切换为 on 后,以服务器的文件时间作为显示的文件时间。
jiang
2023-01-25 03:59:28
jiang\n楼主

中文乱码问题

location /download {
    # ... 其它同上
    charset utf-8,gbk; # 两个字符集间不要加空格
}
jiang
2023-01-25 04:07:04
jiang\n楼主

添加目录密码保护

如果该目录是隐私目录,就需要为其增加密码保护。方法如下:
location /download {
    # ... 其它同上
    
    auth_basic "Enter your name and password";
    auth_basic_user_file /var/www/html/.htpasswd;
}

其中,authbasic 字段是用户名、密码弹框上显示的文字(貌似在 Chrome 和 Safari 上面都没有用到),而 authbasicuserfile 指定了记录登录用户名与密码的文件 .htpasswd,这个文件需要使用 htpasswd 命令或者在线工具来生成。

htpasswd 命令是 MacOS 系统自带的命令,如果是 Windows 系统,建议直接使用在线生成工具比较方便。

# 创建一个全新的文件,会清除文件里的全部用户
$ htpasswd -c /var/www/html/.htpasswd user1  
# 添加一个用户,如果用户已存在,则修改密码
$ htpasswd -b /var/www/html/.htpasswd user2 password
# 删除一个用户
$ htpasswd -D /var/www/html/.htpasswd user2


更具体的使用可以参考[官方文档](https://httpd.apache.org/docs/current/programs/htpasswd.html)。