本文介绍:如何将java后端代码部署到阿里云的以CentOS7为操作系统轻量应用服务器上
前后历经一周时间搭建好服务器,成功在浏览器中访问后端代码,欣慰。最大的所得是:做某件事前对此事有个全局了解很重要!!!
前言:如果长期使用服务器并绑定域名以便开放访问就需要网站备案: ICP备案前准备概述
备案的几个重点,事关服务器和域名的选择
关于微信小程序的其他注意事项
学生参加阿里云的开发者成长计划可免费获得一个2个月的云服务器ECS,答题后可免费续费4个月(共6个月) 阿里云开发者成长计划–学生优惠
ping 各地域服务器所对应的IP地址
地区 | 服务器ip |
---|---|
华东 1 | oss-cn-hangzhou.aliyuncs.com |
华东 2 | oss-cn-shanghai.aliyuncs.com |
华北 1 | oss-cn-qingdao.aliyuncs.com |
华北 2 | oss-cn-beijing.aliyuncs.com |
华北 3 | oss-cn-zhangjiakou.aliyuncs.com |
华北 5 | oss-cn-huhehaote.aliyuncs.com |
华南 1 | oss-cn-shenzhen.aliyuncs.com |
香港 | oss-cn-hongkong.aliyuncs.com |
美国西部 1 (硅谷) | oss-us-west-1.aliyuncs.com |
美国东部 1 (弗吉尼亚) | oss-us-east-1.aliyuncs.com |
亚太东南 1 (新加坡) | oss-ap-southeast-1.aliyuncs.com |
亚太东南 2 (悉尼) | oss-ap-southeast-2.aliyuncs.com |
亚太东南 3 (吉隆坡) | oss-ap-southeast-3.aliyuncs.com |
亚太东北 1 (日本) | oss-ap-northeast-1.aliyuncs.com |
欧洲中部 1 (法兰克福) | oss-eu-central-1.aliyuncs.com |
中东东部 1 (迪拜) | oss-me-east-1.aliyuncs.com |
阿里云开发社区:阿里云轻量应用服务器系统镜像和应用镜像区别及选择
阿里云–ECI当前支持的地域和可用区
常用端口及其作用
端口 | 作用 |
---|---|
8888 | 宝塔默认端口 |
80 | http默认端口 |
443 | https默认端口 |
22 | ssh工具默认端口 |
3306 | mysql数据库默认端口 |
xxxx | 后端项目端口 |
ssh工具可以选择Putty、Xshell,作者选择的是Xshell。通过ssh可以远程连接服务器,操纵并配置服务器
使用ssh工具连接Linux服务器
ssh工具xshell软件连接linux服务器
使用Xshell可能会出现此问题,本篇文章可以解决:xshell出现WARNING!The remote SSH server rejected X11 forwarding request
首先安装宝塔面板,以方便管理服务器
阿里云ECS服务器安装宝塔BT面板
一定要根据服务器中的操作系统来选择对应的安装命令!宝塔Linux面板命令(安装宝塔命令)
安装好宝塔后,会显示外网面板地址,在浏览器中访问,并输入提供的用户名和密码即可
首次进入宝塔面板,会弹出选择LNMP和LAMP,这里需根据后端实际的开发环境来选择响应的软件和版本,安装方式选极速安装就行(还需后续配置,以访问后端接口)
作者只安装Nginx、jdk1.8;作者需求是:在CentOS7上运行后端java项目;设计技术:
SpringBoot
、MyBatis
。因为用springboot
开发出来的jar包,已经内置了tomcat。所以我们不用再CentOS中部署tomcat环境了,只需要把xx.jar
这个文件上传到服务器,然后用java命令启动即可。具体操作将在此部分讲解七、部署后端项目
作者在宝塔中只安装了Nginx1.18,而jdk在宝塔中是和tomcat绑定的,因只需要jdk,所以作者通过命令行的方式在ssh工具中单独安装并配置环境变量
使用命令行(ssh工具–Xshell/putty)配置环境比较麻烦,需要对Linux命令较为了解
Linux基本命令
按键/命令 | 作用 |
---|---|
Insert |
编辑状态 |
Esc |
退出编辑 |
:wq |
保存并退出 |
cd |
切换路径 |
ls |
显示指定工作目录下之内容 |
cat /proc/version |
查看centos系统版本信息 |
lsof -i :portnumber |
查看端口占用情况,#portnumber要用具体的端口号代替 |
查看centos操作系统的位数
选购域名后需要实名认证
选购网站:万网
活动:一元选购域名
解析域名
如果只能访问不带www的域名,那么在域名解析中需要检查主机记录是否有@
或www
的
域名加了www无法访问,不加可以访问,为什么
添加能通过浏览器访问的域名。一般要添加带www
的和不带www
的域名,以便能通过浏览器访问到两者
暂不操作,选购证书后,见五、SSL证书
中安装证书
部分
SSL证书是什么:网站安装SSL证书后,使用https加密协议访问网站,可激活客户端浏览器到网站服务器之间的"SSL加密通道"(SSL协议),实现高强度双向加密传输,防止传输数据被泄露或篡改。
SSL证书的作用
阿里云 SSL证书 选购页面
2020阿里云免费SSL证书申请方法流程(图文教程)
首先在网站菜单栏下添加站点,在设置中选择SSL–>其他证书,将下载的ssl证书的指定文件复制放到对应的框中,在证书夹
中点击部署
2016年备案大体流程(可参考)
关于域名备案的几个困惑点:
在阿里云备案填写信息的过程中有任何问题,可参考阿里云备案首页的常见问题,能解决大部分问题–阿里云备案
部署java项目的大致流程了解:java项目怎么部署到linux服务器
作者使用maven中的package进行打包
可参考此阅读量较多的文章(作者未进行测试):IDEA+Maven 打jar包
使用支持FTP协议的工具,如Xftp、FileZilla
使用Xftp上传文件到Linux服务器
使用ssh工具访问数据库,
create database database_name;
use database_name;
source xx.sql
配置数据库的关键点:
cd jar包所在目录
java -jar xxx.jar
如按照上述命令操作,在退出ssh工具,就无法在服务器访问,如需使jar包在后台长期运行,任何时间能被浏览器访问,则需按一下步骤操作
输入命令:nohup java -jar xxx.jar &
输入nohup命令之后会给出提示:nohup: ignoring input and appending output to ‘nohup.out’
,这是正常提示,直接打回车就可以。同时,会在jar的同级目录下生成nohup.out
文件
终止jar包运行
ps -ef|grep java
kill -9 进程号
Linux启动与停止jar包运行
以下配置nginx借助于宝塔面板
设置已添加的站点,修改配置文件以下部分:
cert
文件夹,将证书.pem
和.key
存放其中。server域
中添加一个location域
中添加访问路径。server_name
理解:当在浏览器地址栏中访问server_name
中的域名,nginx将自动转发到后端项目端口关于nginx的反向代理: Nginx配置——反向代理
详解 nginx 配置文件及构建 web 虚拟主机
nginx配置文件nginx.conf详细讲解
上文中操作过程中可能存在的问题
本文汇集作者在搭建服务器时遇到的种种问题,并结合已有文章整理而成,希望能为大家节省时间,少走弯路。如果大家有任何问题或补充欢迎留言!