Nginx用户认证
- 为了增加网站的安全性,部分页面可以做二次认证
[root@CentOS-1 vhost]# vi bbs.mxiaoqi.top.conf
server
{
listen 80 ;
server_name bbs.mxiaoqi.top;
index index.html index.htm index.php;
root /data/wwwroot/bbs.mxiaoqi.top;
location ~ /admin.php
#访问哪个文件需要输入密码
{
root /data/wwwroot/bbs.mxiaoqi.top;
auth_basic "Auth";
auth_basic_user_file /etc/nginx/user_passwd;
#密码文件配置
include fastcgi_params;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/wwwroot/bbs.mxiaoqi.top$fastcgi_script_name;
}
location ~ \.php$
{
root /data/wwwroot/bbs.mxiaoqi.top;
include fastcgi_params;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/wwwroot/bbs.mxiaoqi.top$fastcgi_script_name;
}
}
#保存后生成用户密码文件,需要使用htpasswd命令
[root@CentOS-1 vhost]# yum install -y httpd-tools
[root@CentOS-1 vhost]# htpasswd -c /etc/nginx/user_passwd user1
New password:
Re-type new password:
Adding password for user user1
[root@CentOS-1 vhost]# cat /etc/nginx/user_passwd
#密码123456
user1:$apr1$gHhwTBUK$EQ0rhRva16C9go4501a6A1
#再次创建新用户的时候就不用-c,-c表示生成新的文件。可以使用-m代表md5加密
nginx location优先级: location / 优先级比location ~ 低,如果同时满足两个location会选择有 ~ 的location
==END==