欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

nginx配置目录访问&用户名密码控制

程序员文章站 2024-03-19 13:01:28
...

背景

项目上需要一些共享目录让外地同事可以网页访问对应的文件,且受权限控制;
现有环境:

  1. centos
  2. nginx

你可以了解到以下内容:

  • 配置nginx开启目录访问
  • 并配置nginx用户名和密码进行权限控制

1/2 列出目录列表

autoindex on; # 开启目录文件列表

还可以加一些其它的功能,以下是我使用的附加配置:

autoindex_exact_size on; # 显示出文件的确切大小,单位是bytes
autoindex_localtime on; # 显示的文件时间为文件的服务器时间
charset utf-8,gbk; # 避免中文乱码

2/2 加上用户名和密码(需要安装软件)

a. 安装httpd-tools

yum -y install httpd-tools

b. 使用htpasswd生成指定用户名和密码的权限文件,示例如下,按照提示输入两次密码

# 在/etct/nginx目录下,生成passwd110文件
# 添加test110用户
htpasswd -c /etc/nginx/passwd110 test110

htpasswd还有其它参数,可以通过htpasswd -h来查看,例如可以指定一些密码加密方式

c. 配置nginx

auth_basic "input your password"; #这里是验证时的提示信息 
auth_basic_user_file /etc/nginx/passwd110;

示例

完成配置示例(开启/var/www/logs 目录列表,并且需要用户名和密码访问)如下:

location /logs {
	root /var/www/;
	autoindex on; # 开启目录文件列表
	autoindex_exact_size on; # 显示出文件的确切大小,单位是bytes
	autoindex_localtime on; # 显示的文件时间为文件的服务器时间
	charset utf-8,gbk; # 避免中文乱码
	# add_header Content-Disposition attachment;
	# 以下是配置用户名和密码访问
	auth_basic "Please input password"; #这里是验证时的提示信息 
	auth_basic_user_file /etc/nginx/passwd110;
}

引用:https://www.cnblogs.com/fenqi/p/10879849.html

相关标签: nginx