因为在弄spa,又不想每次都跨域,所有想到用nginx的反向代理,这里(仅仅)是一篇笔记。
安装
我是直接brew安装的,ubuntu同理,如果是编译安装那么仅仅是配置文件目录不一样,这里不展开说了。
配置
由于不是部署生产环境,所以nginx得大部分特性没有用到,仅仅作为反向代理,以及代理静态文件。
这里还有一个问题,就是osx不允许直接listen 80端口,但也不影响,因为不是生产环境。我用的是4000端口。下面是配置文件
server {
listen 8080;# 8080端口的服务
server_name localhost;
access_log off;
# back-end后端api的代理
location /api {
proxy_pass http://127.0.0.1:3000;# 代理3000端口
}
# front-end前端的代理
location /fe {
proxy_pass http://127.0.0.1:4000;# 代理4000
}
# static files静态文件的代理
location ~ \.(js|css) {
root /dist;
proxy_pass http://127.0.0.1:4000;
}
}
这边还有一个问题,就是前端反向代理静态资源不能加载,所以我就代理了资源文件。
具体内容看这里
这样就可以了。