介绍
nginx: Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,在各大型互联网公司都有非常广泛的使用。
niginx在windows中的安装是比较方便的,直接解压即可。所以我们直接将资料中的nginx-1.22.0.zip压缩文件拷贝到无中文的目录下,直接解压即可,如下图所示就是nginx的解压目录以及目录结构说明:
很明显,我们如果要发布,直接将资源放入到html目录中。
部署项目
将我们之前打包的前端工程dist目录下得内容拷贝到nginx的html目录下,如下图所示:
然后我们通过双击nginx下得nginx.exe文件来启动nginx,如下图所示:
nginx服务器的端口号是80,所以启动成功之后,我们浏览器直接访问http://localhost:80 即可,其中80端口可以省略
PS: 如果80端口被占用,我们需要通过conf/nginx.conf配置文件来修改端口号。如下图所示:
Linux安装Nginx
安装过程:
1、安装依赖包
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2、下载Nginx安装包
wget https://nginx.org/download/nginx-1.16.1.tar.gz
需要先安装wget,如果已经安装请忽略
yum install wget
3、解压
tar -zxvf nginx-1.16.1.tar.gz
4、进入目录
cd nginx-1.16.1
5、安装到指定位置,安装前检查
./configure --prefix=/usr/local/nginx
6、编译再安装
make&&make install
7.配置系统环境变量,把nginx的二进制文件配置到系统环境变量中。
vim /etc/profile
直接添加到原有的前面,用:隔开
source /etc/profile # 重新加载
查看Nginx版本,需要进入nginx/sbin/目录
nginx -v
检查配置文件
nginx -t
启动Nginx
nginx
停止nginx
nginx -s stop
启动完成后查看nginx进程
ps -ef | grep nginx
Nginx配置文件
全局块 和Nginx运行相关的全局配置
events块 和网络相关的配置
http块 代理、缓存、日志记录、虚拟主机配置
http全局块
Server块
server全局块
location块
注:http块中可以配置多个Server块,每个Server块中可以配置多个location块
部署静态资源
红色表示指令,固定写法,不能动,黑色为可配置的
改完之后要重新加载:nginx -s reload
反向代理
正向代理,设置在客户端,客户端知道目标服务器的地址
反向代理,设置在服务器,客户端直接访问代理服务器就可以获取目标服务器资源,由代理服务器负责将请求转发给目标服务器
配置反向代理
server{
listen 82;
server_name localhost;
location/{
proxy_pass http://192.168.138.101:8080; #反向代理配置,将请求转发到指定服务
}
}
负载均衡
业务流量大,业务逻辑复杂,单台服务器的性能及单点故障问题凸显,所有需要多台服务器组成应用集群,进行性能的水平扩展以及避免单点故障出现。
应用集群:将同一应用部署到多台服务器上,组成应用集群,接收负载均衡器分发的请求,进行业务处理并返回响应数据。
负载均衡器:将用户请求根据对应的负载均衡算法分发到应用集群中的一台服务器进行处理。
配置负载均衡
upstream targetserver{ #upstream指令可以定义一组服务器
server 192.168.138.101:8080;
server 192.168.138.101:8081;
}
server{
listen 8080;
server_name localhost;
location/{
proxy_passhttp://targetserver;
}
}
负载均衡策略: