远程连接阿里云 linux
- 百度搜索阿里云登录,输入账号密码
- 右上角点开控制台
- 资源概览会显示实例个数,点击实例打开实例列表
- 点击需要连接的实例后方的管理资源超链接打开实例页面
- 点击远程连接,选择 workbench 连接
- 输入账户名密码点确定
(本地试了 xshell,连不上,还没搞明白是为啥子)
传输文件到 linux 服务器
- workbench 页面左上角文件 -> 打开新文件树,可以看到 linux 里的文件目录
- 在要放项目的文件夹上右键可以上传 windows 本地的文件,把 jar 包和 vue 的 dist 文件传到服务器上
启动后端
- 在 jar 包所在目录执行启动 jar 的命令:
不指定端口:
nohup java -jar XX.jar > XX.log
指定端口:
nohup java -jar XX.jar --service.port=8080 > XX.log
执行命令后需要重新打开一个终端,关闭当前终端服务不会停掉,在 jar 包的目录中会多出一个 XX.log 的文件,此文件是项目启动日志文件,文件树中如果看不到就要在上级文件夹上右键刷新一下
启动前端
- vue 的 dist 文件需要用 nginx 去启动,确保 linux 安装了 nginx ,确保自己找到的是目前正在使用的 nginx,一般 nginx 存放目录:
/usr/local/nginx
- 打开 nginx 的配置文件
vim /usr/local/nginx/conf/nginx.conf
- 增加配置:
# 别人的配置
server {
xxxx
}
# 你的配置
server {
listen 8101;
server_name xx.xx.com;
charset utf-8;
location / {
root /home/xx/xx/dist;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8081/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
上边的 server 配置可以有多个,在其他的 server{} 后补充自己的配置即可。
其中:
8180 是指定的 vue 前端的端口号,可以不跟本地打在 dist 包里的一致;
proxy_pass 后的 8081 端口号是后端的端口号,如果启动 jar 的时候指定了端口号就是指定的那个,没指定就是打 jar 包时项目里配的那个。
- 重启 nginx
# 转到 sbin 目录下
[root@xx nginx]# cd /usr/local/nginx/sbin
# 重启 nginx
[root@xx sbin]# ./nginx -s reload
# 也可以先停掉,再启动↓
# 停止 nginx
[root@xx sbin]# ./nginx -s stop
# 启动 nginx
[root@xx sbin]# ./nginx
在浏览器验证网页是否可以打开
- ip 是实例页面显示的弹性公网 IP ,端口号是 nginx 配置的前端端口号
- 如果能打开到这里就结束了,如果打不开,且 F12 显示 Referrer Policy: strict-origin-when-cross-origin ,那就说明你的端口号被拦截了,需要把端口号加入安全组,具体操作见:阿里云部署 vue 项目后访问网页报 Referrer Policy: strict-origin-when-cross-origin