一、简介
Nginx是一个轻量级、高性能、稳定性高、并发性好的HTTP和反向代理服务器。也是由于其的特性,其应用非常广。
有三大作用:
1.1 反向代理
那么什么是代理服务器?
所谓代理服务器就是位于发起请求的客户端与原始服务器端之间的一台跳板服务器,正向代理可以隐藏客户端(服务器不知道实际发起请求的客户端),反向代理可以隐藏原始服务器(客户端不知道实际提供服务的服务器)。
什么是正向代理?
要了解反向代理之前我们先说说正向代理:正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。(通俗地讲就是代理用户去访问服务器,比如我们国内访问谷歌,直接访问访问不到,但是我们可以通过一个正向代理服务器去访问他)
什么是 反向代理?
反向代理(Reverse Proxy)实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器(可以通过请求地址的匹配进行转发到特定服务器),并把从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
1.2 负载均衡
负载均衡就是有多个服务器存放相同内容(也就是集群),客户端发送请求到nginx,nginx会把请求平均分摊到每个服务器中,(比如有4个请求,两个服务器,那么每台服务器会有两个请求)
1.3 动静分类
二、安装
(1)http://nginx.org/en/download.html,下载稳定版本即可
(2)下载完解压,在有exe文件的目录下运行
输入命令:nginx.exe打开,在任务管理器进程即可看到下面内容:
注意:如果关闭cmd窗口,nginx是不会停止的,需要输入命令nginx.exe -s stop命令才可停止
三、配置nginx
3.1 找到配置文件F:\nginx\nginx-1.18.0\conf
3.2 在nginx.conf进行配置
(1)修改nginx默认端口为81(数字没有强制)
(2)配置nginx转发规则
在http{ }里面添加
server {
listen 9001; #nginx监听端口
server_name localhost;
location ~ /adminService/ { #匹配路径
proxy_pass http://localhost:8001; //转发服务器地址
}
location ~ /labOss/ {
proxy_pass http://localhost:8002;
}
}
(3)最后修改前端请求地址为nginx地址
[process.env.VUE_APP_BASE_API]: {
target: `http://localhost:9001`,
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
}
}
注:配置完需要重新启动nginx