删除指定目录下N天以前的日志文件find /path -name "*.log" -type f -mtime +210 -exec rm -f {} \;
#!/bin/bash #登录账号 user=`whoami` #运行环境 env="debug"; if [[ $user = "root" ]]; then echo $user; env="release"; fi echo "运行环境:${env}"; #安全验证操作 if [[ $env != "debug" ]]; then read -t 20 -s -n 4 -p "请在20秒内输入操作密码:" pwd if [[ $pwd != 1234 ]]; then echo -e "\n" echo "密码错误无法使用" exit fi #statements fi root_dir="/root/"; #管理端代码目录 web_dir="${root_dir}nginx/html/test
统计指定URL访问次数awk '$7 ~ "/url"' file.log | wc -l统计指定状态码次数awk '$9 == "404"' file.log | wc -l最大并发量awk '{ print $4 }' access.log | sort | uniq -c | sort -nr | head -1统计总使用流量(带宽)#!/bin/bash LOG_FILE="access.log" # 修改为你的Nginx日志文件路径 # 使用awk提取body_bytes_sent字段并求和 TOTAL_BANDWIDTH=$(awk '{sum+=$10} END {print sum}' $LOG_FILE) echo "总带宽消耗:$TOTAL_BANDWIDTH 字节"统计某些高频访问日期#!/bin/bash # 设置日志文件路径 LOG_FILE="access.log" # 设置分析的最小访问次数 MIN_COUNT=5 # 使用awk分析日志
使用版本 - CentOS Linux release 7.5.1804 (Core) - nginx/1.12.2版本 - curl 7.61.0 (x86_64-pc-linux-gnu) libcurl/7.61.0 OpenSSL/1.0.2k zlib/1.2.7 对于一些服务器流量异常、负载过大,甚至是大流量的恶意攻击访问等,进行并发数的限制;该模块可以根据定义的键来限制每个键值的连接数,只有那些正在被处理的请求(这些请求的头信息已被完全读入)所在的连接才会被计数。目录limit_conn_zonelimit_connlimit_conn_statuslimit_conn_log_level并发限制于error_page的结合使用limit_conn_zoneSyntax: limit_conn_zone key zone=name:size; Default: — Context: http设置一个共享区间,用于存储各种各样的key的连接状态 该命令和limit_zone命令一起配合使用 size的大小最小为32k(32K),否则会报错nginx: [emer
使用版本 - CentOS Linux release 7.5.1804 (Core) - nginx/1.12.2版本 - curl 7.61.0 (x86_64-pc-linux-gnu) libcurl/7.61.0 OpenSSL/1.0.2k zlib/1.2.7目录启动停止 nginx -s stop优雅停止 nginx -s quit平滑重启 nginx -s reload指定配置文件操作 nginx -c /tmp/nginx.conf重新开始记录日志 nginx -s reopen检测语法错误 nginx -t查看版本信息和编译配置 nginx -v热部署默认编译后,nginx的可执行二进制文件在/usr/local/nginx/sbin目录下,可执行文件为nginx 我们需要执行cp /usr/local/nginx/sbin/nginx /usr/bin这样才可以在全局中直接找到nginx的二进制文件启动直接执行nginx 如果服务器已经有nginx在执行,再次执行nginx会报错nginx: [emerg] bind() to 0.0.0.0:80 failed