微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

22,Nginx常用功能模块

1,Nginx常用模块(日志切割)
1)我们可以在虚拟主机配置定义不同网站日志放到以自己名字命名的日志文件

22,Nginx常用功能模块


2)systemctl reload Nginx
cd /var/log/Nginx && ll

22,Nginx常用功能模块

4)切割日志,让日志按照每天日期去命名

22,Nginx常用功能模块


5,logrotate -f /etc/logrotate.d/Nginx 切割

22,Nginx常用功能模块


2,查看Nginx状态模块
1)cd /etc/Nginx/conf.d

22,Nginx常用功能模块


2)systemctl restart Nginx
3)curl www.oldzhang.com

22,Nginx常用功能模块


requests:http请求数
handled:连接成功数
accepts:总的连接数
3,目录索引模块
像这样的目录索引场景:

22,Nginx常用功能模块


22,Nginx常用功能模块


charset utf-8,gbk;
中文目录乱码,添加解决乱码
autoindex on | off;
default: autoindex off;
context: http, server, location
autoindex_localtime on;
认为 off,显示文件时间为 GMT 时间。
autoindex 常用参数
autoindex_exact_size off;
认为 on, 显示文件的确切大小,单位是 bytes。
修改为 off,显示文件的大概大小,单位是 kB 或者 MB 或者 GB。

4,Nginx访问控制模块

22,Nginx常用功能模块

5,Nginx网页访问登录模块
1)安装httpd密码工具
yum install httpd-tools -y
2)生成密码配置文件
htpasswd -b -c /etc/Nginx/auth_conf oldzhang oldzhang
创建新的密码文件, -c 创建新文件 -b 允许命令行输入密码
3)修改配置文件

22,Nginx常用功能模块


6,请求限制(http请求)
还有一种连接限制(tcp连接)这种限制的弊端就是只要一次tcp连接请求成功后面就可以有无数http请求,所以现在tcp连接意义不大
1)定义请求限制域

http {
          limit_req_zone $binary_remote_addr zone=www_zone:10m rate=1r/s;
                }

zone=www_zone 域名
10m 容量10M
rate=1r/s 单位秒运行最大请求数
2)引用限制域

server {                    
         limit_req zone=www_zone burst=3 nodelay;                   
}                   

zone=www_zone 域名
burst 运行最大延迟数
nodelay 没有该字符所有请求都排队卡死
3)测试
ab -n 20 -c 1 http://www.oldzhang.com/ 模拟20个并发,1秒最大运行1个
grep "2019/08/24" error.log|wc -l 在错误日志里可以看到,允许一个请求,3个延迟在等待,16个被限制

22,Nginx常用功能模块

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐