本文作者:阿豪

Nginx配置用户认证

阿豪 1年前 ( 2020-02-10 ) 154
Nginx配置用户认证摘要: # vi /usr/local/nginx/conf/vhost/test.com.conf //写入如下内容server {  listen&n...

# vi /usr/local/nginx/conf/vhost/test.com.conf //写入如下内容

server {  
listen 80;  
server_name test.com;  
index index.html index.htm index.php;  
root /data/wwwroot/test.com;  
location  /{  
auth_basic  "Auth";  
auth_basic_user_file   /usr/local/nginx/conf/htpasswd;  
}  
}

因为做用户认证需要用到htpasswd命令,所以需要安装下apache

# yum install -y httpd

默认安装在/usr/bin目录下

# htpasswd -c /usr/local/nginx/conf/htpasswd ahao  //生成一个新的密码文件并且写入用户

# htpasswd  /usr/local/nginx/conf/htpasswd ahao   //生成一个新的用户写入指定的密码文件里面

# /usr/local/nginx/sbin/nginx -t

# /usr/local/nginx/sbin/nginx -s reload

mkdir -p /data/wwwroot/test.com             

# touch /data/wwwroot/test.com/index.html

测试curl -uahao:ahao -x127.0.0.1:80 test.com -I

image.png

记得设置个默认页面不然会出现403错误

还有密码文件和你生成的密码文件要在同一个目录不然也会403

#//匹配全局 
location  /{   
auth_basic  "Auth";   
auth_basic_user_file /usr/local/nginx/conf/htpasswd;   
}  
# //匹配以admin结尾的目录  
location  /admin/  
{  
auth_basic  "Auth";  
auth_basic_user_file   /usr/local/nginx/conf/htpasswd;
  }
#贪婪匹配以admin.php开头的文件
location  ~ admin.php   
  {  
  auth_basic   "Auth";  
  auth_basic_user_file  /usr/local/nginx/conf/htpasswd;  
  }


文章版权及转载声明

作者:阿豪本文地址:https://www.ahaoyw.com/article/89.html发布于 1年前 ( 2020-02-10 )
文章转载或复制请以超链接形式并注明出处阿豪运维笔记

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏