一、Nginx 的安装
- 选择CentOS部分 按照官网的说明安装就可以。
- 验证是否安装成功,使用nginx -v 命令
- 启动nginx,使用 nginx 命令 启动服务
- 启动之后,可以通过浏览器访问一下服务器的公网ip地址,会输出nginx的默认的一个页面
二、本地的vue项目打包构建,生成dist文件夹
npm run build
三、将打包好的dist文件夹里面的内容上传到服务器nginx的web目录地址
- nginx的web目录地址:/usr/share/nginx/html
- 使用ftp工具上传代码即可 下载地址
-
四、问题一、城市数据的接口请求报错
原因分析:本地开发时我们使用了代理设置,只在本地开发有效,上线之后无效。
问题处理:配置服务器上nginx代理 找到nginx的配置文件: /etc/nginx/conf.d/default.conf 下载到本地(避免出错)
- 对下载完成的文件,进行复制(保留原有文件容错)
修改文件/etc/nginx/conf.d/default.conf
# 访问/路径
location / {
# 访问这里配置好的根目录
root /usr/share/nginx/html;
# 默认页面
index index.html index.htm;
}
# nginx 的代理配置,参考项目中的vue.config.js的配置
location /maizuo {
# target => proxy_pass
proxy_pass https://m.maizuo.com;
# pathRewrite => rewrite
rewrite ^/maizuo/(.*) /$1 break;
}
location /api {
# target => proxy_pass
proxy_pass https://mhd.zhuishushenqi.com;
# pathRewrite => rewrite
rewrite ^/api/(.*) /$1 break;
}
将修改好的配置文件,上传到服务器原有位置上传
- 使用 nginx -t 命令,查看配置项是否有误,下述ok为成功
重启nginx服务。(nginx的配置文件修改之后,要重启服务,才能生效)
nginx -s reload
-
五、相关接口,配置好了以后,仍然访问不了
原因是:接口请求的地址是 localhost:8080
解决方法是:将请求地址localhost:8080修改成服务器的ip地址即可。
// 直接 将baseURL 修改成线上ip地址能够处理问题,但是不够优雅,因为后续会频繁的去修改它。
// 推荐使用环境变量来做控制
baseURL: process.env.NODE_ENV === 'production' ? 'http://localhost:8080' : 'http://154.8.228.120/',
修改以后,将项目重新打包,再上线。