nginx可以把项目部署到多台服务器提供并发量
安装nginx
一、安装依赖:yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel 二、下载nginx:https://nginx.org/en/download.html
三、创建安装路径:mkdir /usr/nginx
四、解压:tar -zxvf nginx-1.26.1.tar.gz
五、进入解压后目录:cd nginx-1.26.1
六、指定安装路径:./configure --prefix=/usr/nginx
七、编译和安装nginx:make install
启动nginx(nginx/sbin/nginx)
./nginx 启动
./nginx -s stop 关闭
./nginx -s reload 重新加载配置文件
nginx 核心功能
反向代理功能
正向代理和反向代理的区别
正向代理:代理对象为客户端,服务器不知道客户的信息。
反向代理: 代理的为服务器端。客户不知道服务器的信息。
配置nginx
server {listen 82; #端口号server_name localhost; #主机名或域名location /{ #资源/# 代理的服务器地址proxy_pass http://192.168.111.132:8080;}}
负载均衡
负载均衡就是把请求分摊到多个Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
web项目必须搭建的为集群模式,web服务器项目至少搭建两台及以上。
配置nginx完成负载均衡
upstream aaa{ #定义集群名称server 192.168.111.123:8081; #真实的web服务器集群ipserver 192.168.111.123:8082;}server {listen 81; #端口号server_name localhost; #主机名或域名location /{ #资源/# 代理的服务器地址proxy_pass http://aaa;}}#重新加载nginx配置
负载均衡的策略
策略分为:轮询(默认)|| 权重(服务器硬件配置不同时)|| ip_hash策略(根据客户的ip固定访问对应服务器)|| 花钱买第三方策略插件
#轮询
upstream aaa{ #定义集群名称server 192.168.111.123:8081 weight=3; #真实的web服务器集群ipserver 192.168.111.123:8082 weight=1; #设置权重关键词weight
}
#ip_hash
upstream aaa{ #定义集群名称server 192.168.111.123:8081; #真实的web服务器集群ipserver 192.168.111.123:8082;ip_hash;
}
nginx动静分离
动静分离就是动态资源和静态资源分离开来
将静态资源从项目中分离出来放入nginx文件中
#配置nginx
server {listen 81; #端口号server_name localhost; #主机名或域名location /{ #资源/# 代理的服务器地址proxy_pass http://aaa;}location ~ \.js|.css|...|.jpg$ { #以该后缀结尾的资源访问下方root的指定路径root static; #访问nginx文夹下自己的静态资源放入的文件夹名字}}