首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Nginx 访问状态统计功能配置与使用方法(status)

Nginx 访问状态统计功能配置与使用方法(status)

原创
作者头像
神秘泣男子
发布2024-12-26 09:18:42
发布2024-12-26 09:18:42
1.4K0
举报
文章被收录于专栏:nginx专栏nginx专栏

Nginx 是一款高性能的 Web 服务器,除了提供常规的 Web 服务功能外,还内置了强大的状态统计功能。通过启用 Nginx 的访问状态统计功能,管理员可以实时监控服务器的连接状态和流量情况,例如当前的活动连接数、已处理的请求数等。这对于排查问题、优化性能、了解服务器运行状况非常实用。而且配置过程简单易懂,几步操作即可完成!

实现 Nginx 访问状态统计

1. 确保 Nginx 已启用 stub_status 模块

在安装 Nginx 时,需要确保编译时启用了 stub_status 模块。如果不确定是否启用,可以通过以下命令查看:

代码语言:javascript
复制
[root@localhost ~]# /usr/local/nginx/sbin/nginx -V

在输出结果中,查找是否包含 --with-http_stub_status_module如果没有启用,需要重新编译安装 Nginx,并添加该模块支持。


2. 修改 Nginx 配置文件
  1. 打开 Nginx 配置文件:
代码语言:javascript
复制
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
  1. http 配置段的 server 块中添加以下内容:
代码语言:javascript
复制
server {
    listen       80;              # 监听的端口
    server_name  localhost;       # 服务器名称

    location /status {            # 定义状态统计的访问路径
        stub_status on;           # 启用状态统计功能
        access_log off;           # 关闭此位置的访问日志记录
    }
}

解释:

  • stub_status on;:启用状态统计功能。
  • access_log off;:关闭状态统计页面的访问日志记录,避免产生过多无用日志。


3. 测试配置文件语法

在重新加载 Nginx 配置之前,先测试配置文件的语法是否正确:

代码语言:javascript
复制
[root@localhost ~]# nginx -t

如果显示以下内容,说明配置文件语法正确:

代码语言:javascript
复制
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

4. 重启 Nginx 服务

使用以下命令创建服务文件:

代码语言:javascript
复制
vim /etc/systemd/system/nginx.service

在文件中添加以下内容:

代码语言:javascript
复制
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PIDFile=/usr/local/nginx/logs/nginx.pid
PrivateTmp=true

[Install]
WantedBy=multi-user.target

使新的配置生效:

代码语言:javascript
复制
[root@localhost ~]# systemctl restart nginx

5. 访问状态统计页面

在浏览器中访问以下地址:

代码语言:javascript
复制
http://<服务器IP>/status

或在服务器上使用命令行工具(如 curl)访问:

代码语言:javascript
复制
[root@localhost ~]# curl http://localhost/status

6. 查看状态统计页面内容

访问成功后,将显示以下信息:

代码语言:javascript
复制
Active connections: 4
server accepts handled requests
 4 4 3
Reading: 0 Writing: 1 Waiting: 3

解释:

  • Active connections:当前活动连接数。
  • server accepts handled requests:
    • 第一个数字:已处理的连接数。
    • 第二个数字:成功的 TCP 握手次数。
    • 第三个数字:已处理的请求数。
  • Reading:正在读取客户端请求头的连接数。
  • Writing:正在向客户端发送响应的连接数。
  • Waiting:处于空闲的连接数。
7.设置拒绝允许流量(针对于访问统计)
代码语言:javascript
复制
vim /usr/local/nginx/conf/nginx.conf

使新的配置生效:

代码语言:javascript
复制
[root@localhost ~]# systemctl restart nginx

测试

总结

通过以上步骤,我们成功启用了 Nginx 的访问状态统计功能,并学会了如何查看服务器的实时运行状态。这不仅能帮助我们快速排查问题,还能为性能优化提供重要参考。配置简单,功能实用,希望这篇教程能对你有所帮助!

成功的路上没有捷径,只有不断的努力与坚持。如果你和我一样,坚信努力会带来回报,请关注我,点个赞,一起迎接更加美好的明天!你的支持是我继续前行的动力!"

"每一次创作都是一次学习的过程,文章中若有不足之处,还请大家多多包容。你的关注和点赞是对我最大的支持,也欢迎大家提出宝贵的意见和建议,让我不断进步。"

神秘泣男子

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实现 Nginx 访问状态统计
    • 1. 确保 Nginx 已启用 stub_status 模块
    • 2. 修改 Nginx 配置文件
    • 3. 测试配置文件语法
    • 4. 重启 Nginx 服务
    • 5. 访问状态统计页面
    • 6. 查看状态统计页面内容
    • 7.设置拒绝允许流量(针对于访问统计)
      • 测试
    • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档