Nignx反向代理详解
什么是反向代理?
反向代理就是 用一个代理服务器来接受来自网络上客户端的连接请求,
然后将请求转发给内部网络上真正运行的服务器,
并将从运行的服务器上得到的结果返回给网络上连接的客户端。
也就说客户端不知道访问的服务器的谁,请求都是从代理服务器这个和外网连接的服务器转到内网,从而保护了内网网络的安全。
常常用于做网络拦截,限流或者负载均衡。
好处
1.可以起到保护网站安全的作用,防止一些ddos攻击。
2.可以通过缓存静态资源,来达到加速Web请求的目的。
3.负载均衡,分担大并发量,减少大并发量带来的网络卡顿的服务器奔溃的危险, 一般负载均衡常用的方法是(轮询),weight(权重)
正向代理
代理是一个中间服务器的概念不变,但是方法不一样,它是客户端自己通过一个代理去访问一些内网访问不了的外部资源,也就是说类似一个跳板机,请求通过代理转发给服务端,代理拿回结果返回客户端.这种方式就是内网通过代理取得访问外部资源的权限。服务端不知道客户端是谁,对外隐藏了访问用户信息,一定程度上保证了客户端内网的安全。
也是就说正向是保护客户端内网,反向是保护服务端内网。
Docker部署
docker pull niginx:latest
先拉镜像
执行命令
docker run -it --name nginx(定义名字) -p 80:80 nginx:latest
docker部署vue项目
先打包vue项目
npm run build
出现dist文件夹
然后书写dockerfile
FROM nginx:latest
ENV TimeZone=Asia/Shanghai
COPY ./dist/ /usr/share/nginx/html/
# 用本地的自己写的nginx配置文件覆盖镜像的Nginx配置
COPY default.conf /etc/nginx/conf.d/
nginx.conf
server {
listen 80;# 配置端口
server_name 127.0.0.1; # 修改为docker服务宿主机的ip
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html =404;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
执行命令
docker build -t vueadmin .
docker run -itd -p 80:80 --name vueadmin --restart=always vueadmin