Home > Backend Development > PHP Tutorial > Nginx log如何记录用户信息

Nginx log如何记录用户信息

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-06 20:51:20
Original
1192 people have browsed it

现在我的网站是用Nginx+php,现在想要统计来访的登录用户,观察一个人在网站上的足迹。不想用php来做,因为每一个访问都要做一次记录,php做效率不高,想直接打印在nginx access log里。
我想到的方案是:在日志里记录每一个条访问来自于哪个用户(如果是登录用户就记录用户ID,没有登录的也能给他一个key值,用来标示他的身份),然后结合nginx access log记录的其他内容就可以做比较好看的统计数据报告了。
问题是,我不知道该怎么去做这个记录。。。又不能在每一个用户的URL上带上他的ID。。。

回复内容:

现在我的网站是用Nginx+php,现在想要统计来访的登录用户,观察一个人在网站上的足迹。不想用php来做,因为每一个访问都要做一次记录,php做效率不高,想直接打印在nginx access log里。
我想到的方案是:在日志里记录每一个条访问来自于哪个用户(如果是登录用户就记录用户ID,没有登录的也能给他一个key值,用来标示他的身份),然后结合nginx access log记录的其他内容就可以做比较好看的统计数据报告了。
问题是,我不知道该怎么去做这个记录。。。又不能在每一个用户的URL上带上他的ID。。。

这个简单。。在页面上搞一个ajax请求,URL带上UID就行了,nginx肯定会记下来,而且相应的log也很容易提取出来。

为了更灵活的处理日志格式,建议你直接选用ngx_lua模块。这样的话就可以自定义日志格式了,记录也可以直接导入数据库处理,非常的方便。

我没有太清晰的思路, 不过我觉得nginx能做到应该是http协议层面的东西,有关http相关的数据都可以记录下,但是涉及到ID业务级别的东西,恐怕不好做。如果想做也需要程序和nginx的变量参数相关看是否可以配合实现。
另外业务程序上面肯定还要输出其它很多日志,这个是在所难免的。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
Error restarting nginx
From 1970-01-01 08:00:00
0
0
0
server - Nginx configuration webapp problem
From 1970-01-01 08:00:00
0
0
0
Nginx default.conf problem
From 1970-01-01 08:00:00
0
0
0
centos7 - NGINX exception occurs
From 1970-01-01 08:00:00
0
0
0
nginx load balancing
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template