运维开发网

nginx用户认证和访问日志

运维开发网 https://www.qedev.com 2020-09-20 12:56 出处:51CTO 作者:六六天一
Nginx用户认证配置用户认证:以bbs.jinkai.cc.conf为例vim/etc/nginx/conf.d/bbs.jinkai.cc.conf添加location~admin.php{auth_basic"Auth";auth_basic_user_file/etc/nginx/user_passwd;fastcgi_pass127.0.0.1:9000;fastcg

Nginx 用户认证

配置用户认证:

以bbs.jinkai.cc.conf为例

vim /etc/nginx/conf.d/bbs.jinkai.cc.conf

添加

location ~ admin.php

{

auth_basic "Auth";

auth_basic_user_file /etc/nginx/user_passwd;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /data/wwwroot/bbs.jinkai.cc$fastcgi_script_name;

include fastcgi_params;

}

配置参数解析:location ~ 同一个配置文件有多个location,当都满足一个请求的时候,优先选择 ~ 这个

auth_basic "Auth";

auth_basic_user_file /etc/nginx/user_passwd;

实现用户二次认证的参数,/etc/nginx/user_passwd 存放认证的用户和密码。

创建用户和密码工具htpasswd

安装:yum install -y httpd-tools

htpasswd -c /etc/nginx/user_passwd user1

-c 新建存放用户和密码的文件 用户:user1

-m 设定密码为MD5值加密

新增用户可以不用加参数

[[email protected] conf.d]# cat /etc/nginx/user_passwd

user1:$apr1$FIan.7M/$DM3YH2TlwwkmLNcf9/m5B1

下面参数提供了访问站点的存放目录

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /data/wwwroot/bbs.jinkai.cc$fastcgi_script_name;

include fastcgi_params;

Windows网页访问 bbs.jinkai.cc 会先弹出用户认证,输入用户名和密码后,进入到网页用户名和密码登录

Nginx访问日志

用户访问网站的记录

配置日志文件

主配置文件:/etc/nginx/nginx.conf

下面是定义日志的格式

log_format main '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"';

$remote_user 用户认证的用户名

$request 请求的方法+请求的链接+HTTP版本(GET /admin.php? HTTP/1.1)

main为日志格式的名字,后面可以调用它;

$remote_addr为访问网站的用户的出口IP;

$http_x_forwarded_for为代理服务器的IP,如果使用了代理,则会记录代理的IP;

$time_local为当前的时间;

$host为访问的主机名;

$request_uri 为访问的URL地址;

$status为状态码;例如200,301

$http_referer为referer地址;

$http_user_agent为user_agent。

虚拟主机配置文件:/data/wwwroot/bbs.jinkai.cc.conf

把 #access_log /var/log/nginx/host.access.log main;

移动到最后一个} 上面,改成:access_log /data/logs/bbs.log main;

/data/logs/bbs.log 日志存放的地方;main 日志的格式

[[email protected] conf.d]# mkdir /data/logs

[[email protected] conf.d]# touch /data/logs/bbs.log

[[email protected] conf.d]# cat /data/logs/bbs.log

192.168.111.1 - user1 [09/Sep/2020:22:29:19 +0800] "GET /admin.php? HTTP/1.1" 200 37803 "http://bbs.jinkai.cc/admin.php?" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"

192.168.111.1 - user1 [09/Sep/2020:22:29:19 +0800] "GET /static/image/admincp/admincp.css?VkL HTTP/1.1" 304 0 "http://bbs.jinkai.cc/admin.php?" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"

192.168.111.1 - user1 [09/Sep/2020:22:29:19 +0800] "GET /static/js/common.js?VkL HTTP/1.1" 304 0 "http://bbs.jinkai.cc/admin.php?" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"

扩展:

nginx内置变量:

https://github.com/amingLinux/nginx/blob/master/rewrite/variable.md

nginx location 文档:

https://github.com/amingLinux/nginx/tree/master/location

https://www.cnblogs.com/dadonggg/p/7797281.html

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号