Nginx 核心知识

Nginx 适用场景

在这里插入图片描述

  1. 静态资源服务 - 通过本地文件系统提供服务
  2. 反向代理服务 - nginx的强大性能、缓存加速、负载均衡
  3. API服务 - OpenResty

Nginx 优点

  1. 高并发,高性能
  2. 可扩展性好
  3. 高可靠
  4. 热部署
  5. BSD许可证

Nginx 组成

在这里插入图片描述

Nginx 配置通用语法

  1. 配置文件由指令与指令块构成
  2. 每条指令以“;”结尾,指令与参数间以空格分隔
  3. 指令块以{}大括号将多个指令组织在一起
  4. include语句允许组合多个配置文件以提升可维护性
  5. 使用#添加注释,提高可读性
  6. 使用$符号使用变量
  7. 部分指令的参数支持正则表达式

配置参数

  1. 时间单位 ms/s/m/h/d/w/m/y
  2. 空间单位
    在这里插入图片描述

Nginx 命令行

在这里插入图片描述

http 配置的指令块

在这里插入图片描述

server {
	listen 80;
    server_name test.com www.test.com;
	location /root {
	     alias /webroot/www;
		 root html;
	}
}

nginx gzip压缩

来提高页面加载速度

gzip压缩作用:将响应报⽂发送⾄客户端之前可以启⽤压缩功能,这能够有效地节约带宽,并提⾼响应⾄客户端的速度,压缩会消耗nginx的cpu性能
gzip压缩可以配置http,server和location模块下

location ~ .*\.(jpg|gif|png|bmp)$   //~区分大小写, 匹配任意字符开头以.jpg或.bmp结尾,注意这里的jgp等类型需要使用gzip_types调用
gzip on;                            //开启gzip压缩
gzip_min_length 1;                  //小于多少字节就不做压缩处理
gzip_comp_level 3;                  //压缩比率
gzip_types                          //压缩类型,根据/usr/local/nginx/conf/mime.types中定义;

nginx autoindex

打开目录浏览功能,启用目录流量

location / {
  autoindex on;
  autoindex_localtime on; #之类的参数写这里
}

GoAccess分析Nginx日志

在这里插入图片描述
为了查看本站点的健康状况以及用户访问情况,就需要定期的分析服务器的 access 日志。但是由于没有使用日志分析工具,只能使用 cat、awk、sed 等命令做一些简单的日志分析统计,这样分析结果不理想也不全面,方法也极不高效。作为个人站点更适合引入轻量级的日志分析工具,例如 GoAccess ,其使用简单且分析效果较好

配置 nginx.conf

为了提高 GoAccess 分析准确度,需要配置 nginx.conf 的 log_format 项。

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for" "$request_body"';

安装GoAccess

goaccess.conf配置

time-format %H:%M:%S
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"

GoAccess 命令参数

$ goaccess -h
# 常用参数
-a --agent-list 启用由主机用户代理的列表。为了更快的解析,不启用该项
-d --with-output-resolver 在HTML/JSON输出中开启IP解析,会使用GeoIP来进行IP解析
-f --log-file 需要分析的日志文件路径
-p --config-file 配置文件路径
-o --output 输出格式,支持html、json、csv
-m --with-mouse 控制面板支持鼠标点击
-q --no-query-string 忽略请求的参数部分
--real-time-html 实时生成HTML报告
--daemonize 守护进程模式,--real-time-html时使用
  1. 控制台模式

$ goaccess -a -d -f /data/logs/fanhaobai.com.access.log -p /etc/goaccess.conf

  1. html模式

$ goaccess -a -d -f /data/logs/fanhaobai.com.access.log -p /etc/goaccess.conf -o /data/html/hexo/public/go-access.html

TLS/SSL

## TLS/SSL
在这里插入图片描述

Nginx 高级探索

Master、Worker

在这里插入图片描述

reload

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值