首先拿到服务器第一步,去到安全组设置,把该打开的端口(TCP:80,443,22,ICMP什么的都打开),这里使用的是腾讯云安全组配置,配置内容大致如下:
第二步: 安装JDK、Tomcat以及MariaDB(Mysql分支):
详见:https://cloud.tencent.com/document/product/213/2125 yum命令安装法(只需要看配置MariaDB就可以了)
安装完使用 IP+端口号 看是否能访问到tomcat的欢迎页面,一般来说是不行的,需要再安装 Host Manager
教程:
然后 回到 tomcat 安装目录(不清楚在哪的可以使用whereis tomcat
指令来查看,一般默认位置是在 /usr/share/tomcat
),进入 conf 目录 cd conf
,打开 tomcat-users.xml 文件(vi tomcat-users.xml
),添加如下配置到 <tomcat-users>...</tomcat-users>
之间。(我在做这一步的时候将这其中无关的所有配置都注释掉了,然后再添加这两行配置):
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
保存退出(按ESC,然后输入 :wq
)
在当前目录下打开server.xml(输入:vi server.xml
) 找到 Connector 标签,把它变成这个样子:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true" />
即加入两个属性:URIEncoding=”UTF-8” 和 useBodyEncodingForURI=”true”
(此举防止你的项目中有带中文参数的请求导致请求乱码)
再次打开 IP+端口号 即可看到tomcat管理页面,点击Manager App使用刚才设置的用户名密码即可登录
再次回到系统单调乏味的命令行界面,输入命令:vi /etc/ssh/sshd_config
在打开的文档中,找到被注释的一行:#PermitRootLogin no,将其修改为: PermitRootLogin yes,再找到 #PasswordAuthentication yes 取消其注释,保存退出(按ESC,然后输入 :wq
)
进入Mysql,输入grant all privileges on *.* to root@'%' identified by '你的密码 ';
此举是允许远程用户连接使用服务器上的数据库,用户名:root 密码:你的密码
(项目中的数据库配置文件 jdbc.properties 中的 localhost 最好改成服务器 ip)
接下来你可以在自己的电脑上面模拟一台服务器,即安装一个tomcat,将自己的电脑作为一台服务器,把war包放进这个tomcat中的webapps文件夹,启动tomcat,注意,不是使用IDE去启动Tomcat,而是使用tomcat的bin文件夹内的 startup.bat 或 startuip.sh 来启动,如果正常启动并且能在浏览器正常运行你的项目,则可以将这个war包上传给服务器,我使用的是WinSCP
上传前的准备:
- 导出本地数据库文件(.sql)
- 项目打包(war包)
- 下载一个上传软件,如 WinSCP
- 停止服务器Tomcat的运行(
systemctl stop tomcat
) - 上传SQL文件和war包
将你的 sql文件 和 war包 都放到服务器的tomcat的webapps中,打开mysql(MariaDB),创建一个与你项目同名的数据库并且切换到这个新的数据库(use 数据库名
),输入命令:set character_set_database = utf8;
(设置数据库字符集为utf8)
source+空格+(你上传的sql文件);
确保数据库引入正常不存在乱码,如果有乱码的情况推荐在自己的电脑(不是服务器)上安装可视化数据库图形界面,如Navicat,远程连接你的服务器数据库,进行字符集的修改(前面已经开启了远程连接数据库的权限)。
最后,开启服务器Tomcat,在浏览器中输入: ip + 端口 + / + 你的项目名称(即war包的名称)
至此,你的项目基本上可以在服务器上作威作福了。
Peace.