最近为了7月份实习更加顺手,所以在学习公司比较流行的React,之前对Vue有过了解并做过项目练手,所以对React的思想也是比较好理解的,为了进一步提升自己,以及为后续学习使用Node搭建服务器端,我特地去腾讯云上买了自己的云服务器~这篇博客主要是介绍一下,一个使用React做前端,Express做后端的项目如何打包部署在云服务器上,希望对大家有所帮助~
云服务器准备
首先你需要有个已经备案过的域名,然后需要买个云服务器,将你的域名解析到服务器地址,我解析的域名为qq.qiuruolin.cn,具体步骤大家可以Google一下~
因为我使用的是Mac,所以首先我在终端中使用ssh连接云服务器,配置nginx,并通过service nginx start启动服务,下载安装git,因为我们后面需要使用git来克隆express后端项目
React前端
首先使用create-react-app创建React项目,使用npm install安装依赖包,通过npm start运行,成功后就可以开始编写你自己的项目了
可以在项目中使用ajax去请求后端数据,但是要注意解决跨域问题:
在package.json中添加1
2
3
4
5"proxy": {
"/api": {
"target": "http://127.0.0.1: 3001"
}
},
http://127.0.0.1: 3000换成你需要代理的域名,最好是使用IP地址,上面的配置就是将本地所有以/api开头的请求转发到你配置的地址上
在这个项目中,我们需要把请求代理到我们云服务器的express后端上
写完代码之后,接下来就是打包部署到云服务器上的工作了
首先通过npm build对项目进行打包,生成名为build的文件夹
将build文件夹通过scp命令上传到云服务器上
注意:要上传至服务器的根目录下,默认为/root(可以在/etc/nginx/nginx.conf中配置)
上传后通过service nginx restart重启,这时你试着可以访问qq.qiuruolin.cn/build/index.html,若页面出现则表示部署成功。
Express后端
通过express来新创建一个express项目,前提是需要你全局安装express,新建项目之后使用npm install安装依赖包,使用npm start运行,出现Express欢迎页则说明项目创建成功了
接着,你可以先编写一个简单的请求进行测试
创建仓库配置git,并将项目push到git上
连接云服务器,我们使用git克隆项目,并使用npm install安装依赖項,使用npm start,访问你解析的域名:3000/你的api,若成功则你的后端项目就在云服务器上部署成功了
你可以使用npm start &将项目放置后台运行,使用jobs查看运行的进程,fg和bg将进程在前后台切换
总结
到这一步,整个项目基本都配置完了,其实这个并不是花时间最多的地方,花时间探索的是,我如何去构建一个完整前后端俱全的项目,学习的路上会遇到很多迷茫,只要积极探索,不气馁,不放弃,不骄躁,相信大家可以变得更好!希望对大家有所帮助~