Nginx Web服务

目录

一、概述

二、yum安装与编译安装

编译安装

配置文件

核心命令

Nginx信号

启动Nginx

三、HTTPS访问配置(自签名)

3.1、SSL简介

3.2、SSL协议介绍

3.3、传输过程

3.4、HTTPS工作流程

3.5、生成证书

3.6、自签名证书

四、location配置

4.1、作用

4.2、匹配

匹配优先级

4.3、配置方案

(查看文件)

(查看图片)

五、rewrite配置

5.1、语法

5.2、可写入字段

5.3、文件配置

六、配置Nginxz状态统计

6.1、下载vts模块

6.2、编译安装

6.3、配置状态统计页面


一、概述

Nginx是开源、高性能、高可靠的Web服务器和反向代理服务器。

特点
高并发、高性能
模块化架构使得它的扩展性非常好
异步非阻塞的事件驱动模型(epoll)这点和Node.js相似
相对于其他服务器来说他可以连续几个月也不需要重新启动服务器使得他具有高可靠性
热部署、平滑升级
完全开源,生态繁荣
作用
http服务期。可以独立提供http服务。可做网页静态服务器。
虚拟主机。可以实现在一台服务器虚拟出多个虚拟服务器
反向代理,负载均衡
配置安全管理,搭建API网关,对每个接口服务器进行拦截
静态服务代理服务安全服务流行架构
浏览器缓存协议类型访问控制Nginx+PHP(Fastcgi_pass)LNMP
防资源盗用正向代理访问限制Nginx+Java(Proxy_Pass)LNMT
资源分类反向代理流量限制Nginx+Python(uwsgi_pass)
资源压缩负载均衡拦截攻击
资源缓存代理缓存拦截异常请求
跨域访问动静分离拦截SQL注入
Master进程(主进程)特点
管理者,负责读取配置、管理 Worker 进程、处理信号(如重启、平滑升级)单进程,不直接处理请求,仅监听端口并分配连接给 Worker 进程。
Worker进程(工作进程)
实际处理客户端请求的工作单元。1.数量可通过配置(worker_processes)设置,通常等于 CPU 核心数以避免上下文切换开销。2.每个 Worker 进程独立监听端口,采用异步非阻塞方式处理请求,支持高并发(单个 Worker 可处理数万并发连接)

二、yum安装与编译安装

安装方式yum安装编译安装
配置文件目录/etc/nginx//usr/local/nginx/conf
临时数据文件目录/var/lib/nginx
日志文件目录/var/log/nginx/usr/local/nginx/logs
访问页面根目录/usr/shara/nginx/html/uer/local/nginx/html
自定义配置文件目录/etc/nginx/conf.d/usr/local/nginx/conf/conf.d
默认配置文件目录/etc/nginx/default.d/usr/local/nginx/conf/default.d
命令存放目录/usr/local/nginx/sbin

编译安装

配置文件

核心命令

命令作用
systemctl enable nginx开机自动启动
systemctl disable nginx关闭开机自动启动
systemctl start nginx启动Nginx
systemctl stop nginx停止Nginx
systemctl restart nginx重启Nginx
systemctl reload nginx重新加载Nginx
systemctl status nginx查看 Nginx 运行状态
ps -elf | grep [n]ginx查看Nginx进程,但是不会显示grep本身的进程
kill -9 pid根据上面查看到的Nginx进程号,杀死Nginx进程,-9 表示强制结束进程
nginx -s reload向主进程发送信号,重新加载配置文件,热重启
nginx -s reopen重启 Nginx
nginx -s stop快速关闭
nginx -s quit等待工作进程处理完成后关闭
nginx -T查看当前 Nginx 最终的配置
nginx -t检查配置是否有问题
nginx -c configfilePath指定配置文件启动nginx

Nginx信号

信号名含义
stop直接停止
quit优雅的退出:有人在访问不会结束进程
reopen分割日志
reload重新加载配置文件
term快速停止nginx进程,可能会中断现有连接,与stop信号类似。
usr1重新打开日志文件,用于日志切割或日志重定向,与reopen信号类似。
usr2平滑地升级nginx可执行文件。
hup重新加载配置文件,优雅地应用新配置,与reload信号类似。
winch当nginx以master/worker工作模式运行时,重新生成worker进程以适应新的配置。
usr3向worker进程发送自定义信号。

启动Nginx

三、HTTPS访问配置(自签名)

3.1、SSL简介

SSL (Secure Sockets Layer)安全套接层。主要任务是提供私密性,信息完整性和身份认证。

3.2、SSL协议介绍

SSL是一个不依赖于平台和应用程序的协议,位于TCP/IP协议与各种应用层协议之间,为数据通信提高安全支持。

3.3、传输过程

1.发送数字证书,获取可信的public key

2.通过public key发送对称密钥,接收方用私钥解密

3.通信双方使用仅仅对方可知的对称密钥进行加密传输

3.4、HTTPS工作流程

1客户端(浏览器)访问网站
2网站服务器返回HTTPS使用的CA证书
3浏览器验证CA证书是否为合法证书
4验证通过,证书合法,生成一串随机数并使用公钥(证书中提供的)进行加密
5发送公钥加密后的随机数给网站服务器
6网站服务器拿到密文,通过私钥进行解密,获取随机数(公钥加密,私钥解密,反之也可以)
7网站服务器把要发送给浏览器的内容,使用随机数进行加密后传输给浏览器(对称加密)
8此时浏览器可以使用随机数进行解密,获取到服务器的真实传输内容

3.5、生成证书

[root@nginx1 ~]#openssl genrsa -out rsa1024.key 1024
[root@nginx1 ~]#openssl req -new -key rsa1024.key -out rsa1024.csr
[root@nginx1 ~]#openssl x509 -req -days 365 -in rsa1024.csr -signkey rsa1024.key -out rsa1024.crt

3.6、自签名证书

四、location配置

4.1、作用

                         配置路径

4.2、匹配

匹配规则
精准匹配=
正则匹配,区分大小写~
正则匹配,不区分大小写~*
匹配到即停止搜索^~

匹配优先级

= > ^~ > ~ > ~* > 不带任何字符 “/”。

4.3、配置方案

                       cd /usr/local/nginx /conf  

                          vim nginx.conf

(查看文件)

(查看图片)

(1)location中的反斜线,代表后面的名字是一个文件夹名

location /test {

...

} 优先查找目录,若目录不存在则查找同名文件

location /test/ {

...

} 只查找目录

(2)return

停止处理请求,直接返回响应码或重定向到其他URL;执行return指令后,location中后续指令将不会被执行。

例如:
location / {
    return 404 "pages not found";
}   #直接返回状态码

五、rewrite配置

根据指定正则表达式匹配规则,重写 URL 。应用场景: 新老域名的更替

5.1、语法

rewrite 正则表达式 要替换的内容 [flag]

5.2、可写入字段

server、location、if

示例:

rewirte /images/(.*\.jpg)$ /pic/$1; # $1是前面括号(.*\.jpg)的反向引用
flag可选值含义
last: 重写后的 URL 发起新请求,再次进入 server 段,重试 location 的中的匹配
break :直接使用重写后的 URL ,不再匹配其它 location 中语句
redirect :返回 302 临时重定向
permanent :返回 301 永久重定向。

5.3、文件配置

六、配置Nginxz状态统计

6.1、下载vts模块

6.2、编译安装

6.3、配置状态统计页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值