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

admin Nginx评论571字数 1044阅读模式

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

你可以了解到以下内容:
配置nginx开启目录访问
并配置nginx用户名和密码进行权限控制

1/2 列出目录列表

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

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

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

2/2 加上用户名和密码(需要安装软件)
a. 安装httpd-tools

  1. yum -y install httpd-tools  

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

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

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

c. 配置nginx

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

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

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

版权声明:文章图片资源来源于网络,如有侵权,请留言删除!!!
admin
  • 本文由 发表于 2021年9月24日 19:52:08
  • 转载请务必保留本文链接:https://www.58pxe.com/7648.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: