个人开发的塔罗牌占卜小程序:【问问塔罗牌】 快来瞧瞧吧!
运行环境ubuntu18.04 服务器环境装了lxd,起一个container环境,随便搞,崩了也不要紧,不喜欢删掉重起
后端使用java架构,提供基本接口服务,前端使用vue,node用来做中间层进行接口的整合处理工作,用nginx
处理静态资源服务,代理node接口服务,这样解决了跨域问题
1、nginx下载 sudo apt-get install nginx
2、启动nginx sudo /etc/init.d/nginx start
3、关闭nginx sudo /etc/init.d/nginx stop
4、重启nginx sudo /etc/init.d/nginx restart
5、查看nginx配置文件所在
sudo nginx -t
6、修改配置文件 vi /etc/nginx/sites-available/default
不懂vi的自行百度
在server 处添加以下代码
location ^~ /api/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://192.168.0.80:3000/users/api;
}
以上代码代表 对80端口进行监控 开头对URL路径进行前缀匹配 匹配成功转发到 http://192.168.0.80:3000/users/api
来个栗子:
前端请求
axios.post('/api/adduser')
.then(function(res){
console.log(res)
})
.catch(function(err){
console.log(err)
})
浏览器就通过默认端口发起请求 http://192.168.0.80/api/adduser
nginx监听默认端口80,并进行匹配http://192.168.0.80/api/,
ojbk匹配到了就转发,这部分http://192.168.0.80/api/就变成 http://192.168.0.80:3000/users/api/
最后变成 http://192.168.0.80:3000/users/api/adduser;
重启nginx
在node端响应接口
node端用express
…….
…..
以上环境搭好了,用express-generator生成项目结构
app.js 中间件拦截匹配/users 走userRouter
users.js
重启node
测试是否代理成功
用eoliner进行测试 当然也可以前端自己请求测试 前端成功返回数据
个人开发的塔罗牌占卜小程序:【问问塔罗牌】 快来瞧瞧吧!