Nginx 配置反向代理
发表于 2020-06-05 | 最后更新于 2021-12-19 | 开发
前言
作为一个前端开发,手里很多的前端项目,其实只对应后端的一个项目,所以前端开发过程要同时启动多个微型开发服务器,但是你的80端口号则只有一个。于是我们把项目启动在了8000,9000,这种端口。
这里我们就可以采用反向代理,开启 nginx虚拟主机,监听 80 端口,并且代理你的3000端口,就完成了端口转发,从而后端配置跨域再也不需要考虑端口问题。
关于 nginx
Nginx 使用基于事件驱动架构,使得其可以支持数以百万级别的 TCP 连接。高度的模块化和自由软件许可证使得第三方模块层出不穷(这是个开源的时代啊)。Nginx 是一个跨平台服务器,可以运行在 Linux、Windows、FreeBSD、Solaris、AIX、Mac OS 等操作系统上。这些优秀的设计带来的极大的稳定性。
Nginx 是一款自由的、开源的、高性能的 HTTP 服务器和反向代理服务器;同时也是一个 IMAP、POP3、SMTP 代理服务器。
Nginx 可以作为一个 HTTP 服务器进行网站的发布处理,另外 Nginx 可以作为反向代理进行负载均衡的实现。
什么是反向代理
‘正向代理代理客户端,反向代理代理服务器’。所谓的正向代理是用户有感知的,比如我们去访问一些国外的网站会通过一些代理服务器改变我们的ip从而达到不被墙的目的。vpn正是这个原理。而反向代理则是代理服务器,用户并不知道你把地址转发到了何处。
用处
其实反向代理的用处有很多,可以抵御某些情况的外站攻击,减少服务器压力和访问安全控制,还能进行负载均衡,将用户请求分发给多个服务器。
不过在我这里的作用就比较简单了,我只是用它来解决一个简单的问题。
nginx.conf 示例
server {
listen 80;
server_name api.sumoli.com;
location / {
proxy_pass http://api.sumoli.com:3000;
index index.jsp index.html index.htm;
}
}
许可协议:
CC BY 4.0