Nginx的基本使用
Nginx的基本使用
简洁
Niginx:是一个高性能的web服务器 和反向代理服务器(重要) 也可以作为邮件代理服务器(一般不使用)
特点:
占用内存小 处理并发能力强 以高性能和低资源消耗而闻名 5万次并发
正向代理和反向代理:
反向代理 : 在处理高并发的请求时 一个服务器处理的请求数量有限 部署多个服务器会分担服务器的压力 但请求访问的入口域名就是一个问题 不知道访问哪 一个 所以Niginx就诞生了 给外界一个统一的入口
注意:Nginx不处理请求 只转发请求 处理请求的还是后台的tomacat 服务器
Nginx 接受请求 转发给后台的空闲服务器 经过后台服务器的处理 返回给nginx nginx在返回结果给客户端
好处:隐藏后台服务器的IP地址 不用知道后台的那一台服务器
正向代理: 被访问的服务器不知道是谁在真正的访问自己 而是只知道代理服务器在访问自己 例子:FQ网站 VPN
Nginx的安装
- 下载Nginx的tar包 安装所需要的依赖 :yum install gcc openssl openssl-devel zlib zlib-devel prce prce-devel
2. 解压tar包 ==》执行configure --prefix=/usr/local/nginx 把nginx安装到 /usr/local/nginx 这个目录下 ==》make编译 ==》 make install ==》进入sbin 执行nginx 开启nginx
Nginx 介绍:
1.目录介绍:
conf:nginx的配置文件 主要时nginx.conf
html :有50 和index 的页面
logs : nginx的日志目录
sbin:nginx的 启动目标
启动之后会有两个进程 master 和 worker master是主程序 worker 是子程序
2.启动方式:
1. 普通启动 : 进入 sbin目录下的 nginx 命令
2. 配置文件启动:./nginx -c 配置文件的完整路径 -c是指指定配置文件 -t 配置文件必须是全路径 -t是指检查配置文件是否正确
3. 关闭nginx:
3.1 优雅的关闭:所有请求都处理完之后关闭 kill -quit 主pid
3.2 快速关闭:kill -term 主pid 这种关闭方式是指直接关闭强制关闭 暴力 不管请求有没有 处理完
3.3 重启nginx nginx -s reload
3.Nginx的配置文件:分为三个部分
1. 基础配置:
user nobody :是指worker的用户
worker_processes :是指开启的子进程数量 越高处理越快 注意:数量是机器内核的数量或者内核数量的两倍 看机器的配置
error_log logs/error.log [debug,infi,notic,warn,error,crith,]默认是error
pid 文件 : 是指运行时的pid的值
2. enents配置:
worker_connections 1024 代表一个worker进程的 可连接数量 那么nginx的 总并发量就是 worker_processes * worker_connections 内核数量 * worker的连接数量
取值上限是 65535
http配置:配置http文件的服务器
includ mine.types; 表示支持nginx的数据类型有哪些 在conf/mine.types 文件里可以修改支持的类型
sendfile no 表示开启高效文件传输
tcp_no push 表示防止网络堵塞
keepalive_timeout :表示连接的超时时间
gzip on 表示开启gzip的压缩
servcer(虚拟主机)
listener 80 : 表示监听端口
server_name localhost 配置服务名
charset utf-8 设置编码字符集
location \ 表示客户端地址栏的根路径 拦截的 请求地址路径
root html 表示在本地磁盘里的根路径 和 网络地址拦的路径相匹配
注意:html==\ 及:IP地址=root
index index.html index.htm 表示首页面
Nginx的主要应用(功能):
静态网站部署
配置一个location 拦截请求 里面放的是静态文件 不能处理动态文件
负载均衡
负载均衡策略:
1. 轮询:一个一次
2. 权重:weight = 数值 按照权重比例分配请求数量
3. ip_hash ; 解决了session问题 是根据hash值 取余来选择服务器 但是hash值取余后值可能相等那么就会一直访问同一台服务器
4. least_conn:最小连接数 服务器性能相同时使用
配置文件
在http里写入
upstrem 别名{
(负载均衡策略)
server ip地址:端口号
server IP地址:端口号 [down]
backup
}
在server里写入
location /项目名{
proxy_pass: http://别名
}
其他命令:
backup 表示备份服务器 在所有的服务器都宕机后会启动这个服务器 主要用在服务器升级时
down 表示关闭该服务器 不处理请求
静态代理:是指把静态资源抽取出来交给nginx处理 tomacat不处理静态资源 nginx处理效率好 能力好 所以选择nginx
两种方式:
第一种方式:表示文件是否以括号中的后缀名为后缀名
location ~ .*.(css|js|html|img|....静态资源文件后缀名)${
root /opt/static
}
第二种方式:表示请求地址种是否包含括号中路径(重要)
location ~ .*/(css|js|static|imger){
root /opt/static
}
解释
~:表示开始正则
第一个 . :表示任意字符
* :表示一个或多个字符
. : 一个普通的 . 转义字符
动静分离
动态资源和静态资源分开管理 nginx管理静态资源 tomcat 管理动态资源
虚拟主机:
两种方式:
改端口号:不重要
upstream 别名{
server:IP地址 端口号
}
server {
port:端口(修改)
server_name:域名
location{
proxy_pass:别名
}
}
改域名:一个域名代表一个服务器 (重要)
还需要在电脑上配置虚拟DNS
路径:C:window/system32/drivers/etc/host
upstream 别名{
server:IP地址 端口号
}
server {
port:端口
server_name:域名(修改)
location{
proxy_pass:别名
}
}

浙公网安备 33010602011771号