近十天也是写了一个有关书籍商城的小项目(JavaWeb),突发奇想,想要将这个项目部署到云服务器上,因为是第一次部署JavaWeb项目,中间也是遇到了一些问题,总结一下遇到的问题以及解决方案供需要的同学使用。
首先你需要购买一个云服务器,我用的是阿里云服务器(因为是学生,所以还是很友好的)。根据自己需求购买吧,网上教程也不少,我就不过多叙说了。
然后需要下载两个软件,一个是Xsheel软件另一个是Xftp软件,我把官网放下面了,这两个软件对于家庭使用是免费的。家庭/学校免费 - NetSarang Website (xshell.com)
下载下来之后,需要登录使用,注册很简单,有个邮箱然后验证一下就可以。具体讲一下Xshell的配置,Xftp也说一下吧。
进来之后点击新建,然后跟着我的步骤走
点击链接,我们需要输入账号 密码 连接成功就可以开始使用啦。账号密码需要你去云服务器的控制台自己设置一下。记住这个账号密码,以后经常会用到,不仅新建的时候需要使用,后面会用的频率也不少,忘记了就修改一下就行。
接下来再简单说说Xftp,进入界面,登陆之后点击新建,然后按照下面的步骤,Xftp主要是方便我们进行windows和云服务器交换文件使用,拖拽就可以十分方便。
之后我们导出我们的JavaWeb项目,我使用的是Eclipse,Idea道理也差不多,都是导出War文件,不会的可以去网上搜一下Idea导出War的教程,我就讲一下Eclipse的流程吧。
右键项目,找到导出,然后选择war文件,没有的话去更多里面找一下,选择war文件,而不是可运行war文件,不要选错了
然后麻烦的就是去配置云服务器的一系列环境。
首先我们需要安装JDK,Mysql,tomcat这三个支撑件。
本来安装这部分不打算细说的,但是考虑到一些同学不太熟悉,还是详细说一下吧
1.安装JDK
yum -y install java-1.8.0-openjdk*
出现Complete即为安装成功。
2.安装tomcat
直接从官网上下载就行
根据自己的环境选择,不是非要和我选一样的
下载下来之后,我们就使用Xftp把这个压缩包拖到云服务器上,然后打开XShell进行解压,tomcat无需安装,解压即可使用。
tar -zxvf apache-tomcat-8.5.65.tar.gz
解压之后会有一个名为 apache-tomcat-8.5.65 的文件夹,进入它的bin目录下,我们需要使用命令
chmod 777 *.sh 授予7的权限,这是最高权限,因为后面需要使用.sh启动和关闭tomcat,完成之后会发现.sh文件都是绿色就成功了。 启动关闭tomcat的命令分别是./startup.sh和./shutdown.sh,需要在bin目录下输入代码运行。
3.安装MySql
输入三条命令
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
之后启动MySQL
service mysqld start 一般不用关停Mysql,一直启动着就行。
查看MySQL默认密码
grep "password" /var/log/mysqld.log
连接Mysql
mysql -u root -p
然后输入密码就是上面grep命令给出的默认密码
成功进入之后我们可以修改用户名密码强度和密码(可做可不做,建议修改成自己的密码)
set global validate_password_policy=0;
ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
设置编码格式
set character_set_database = 'utf8';
set character_set_server = 'utf8';
设置root运行被外网访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';
数据库安装好,我们就可以将本地的数据库导入到云服务器上了,我使用的是navicat软件,大家应该也是这个常见的软件吧。导出为.sql文件之后,还是使用Xftp拖拽到云服务器,然后进入数据库使用Mysql命令导入.sql文件,首先创建一个和项目数据库名称一下的数据库之后使用这个数据库(use 数据库名字)
source /home/abc/abc.sql; 这个命令导入.sql 根据自己的路径修改命令
之后你可以使用showtables检查是否导入成功。
接下来将之前导出的war文件拖拽到tomcat的webapps文件夹下,拖进去之后就什么都不用管了,也不用解压、运行啥的。
最后一步,回到bin目录下,就是tomcat启动的那里,输入./startup命令启动tomcat,怎么看是否登录成功呢。去网站上输入网址 你的公网ip:8080 如果出现的是下面这张图,恭喜你,成功启动tomcat
怎么访问你的项目呢
网址 你的ip:8080/项目名称/首页.html 根据自己的项目进行修改,如果和在你电脑上跑的界面、功能都一样的话,那么恭喜你,十分幸运~第一次就成功了呢~(不像我,部署没花多少时间,找bug解决问题用了快一天······)
讲到这里,就该拜拜啦~ 有问题的话可以看一下我在下面写的一些,可能会帮助到你,如果需要我帮忙的话,可以私信或者评论区留言,可能不会及时看,但是看到我会热心帮助你的~拜拜~
遇到的一些问题:
1.检查一下本地使用的Java版本,编辑器版本与云服务器是否一致,第一次就是因为版本不一致问题导致部署上去很多功能都无法实现。这是出错后第一个检查的点。大多可能都是这个问题
2.数据库连接是不是有什么问题,看看你的这句话 写的是否有问题,无法正常链接数据库
3.项目放的位置是否正确,细心检查一下,路径啥的有没有问题,存放图片的路径是否有问题,因为我的项目中存在上传图片到某个路径下,因为没有修改这个路径,所以倒数第一次修改运行时发现很多图片都显示不出来,一看原来是路径没有修改。
好啦~我暂时就遇到这么些问题,大家有什么问题尽快在评论区讨论。