1购买服务器
本文主要是以阿里云服务器来演示,首先到阿里云官网,这里要说明一下,如果你是学生并且年龄<24岁,那么直接搜“云翼计划”,可以9.9元购买服务器;如果不满足学生的条件可以看下图中最具性价比的这个服务器:
跳转之后找到下图中的活动往下翻找到下图中的这个活动
在个人新用户的这一栏有一个比较实惠的,但是每个人限购一个
接着就是选择你服务器的操作系统,这里用centos7来演示,根据要求把其他的填写完然后购买
购买之后来到你的控制台
在控制台中左边找到下图中的与服务器ecs
下图中的这个IP地址(公)就是你的服务器,记住在这个页面有这个IP地址等会儿要使用它,
看下图的操作把服务器的密码更改一下,记住你更改的密码
按要求填写密码:
重置密码之后服务器会重启,重启之后来到下图中的这个安全组页面
按图中的操作设置开的端口,开放20,21,22,888,8888,8080,3306,443等一系列端口,这里一定要开放8888,8080,3306,22端口;
到这一步服务器的设置基本完成了,接下来就是服务器环境搭建
2环境搭建
环境搭建这里采用“宝塔”的方式来快速搭建。百度搜索“宝塔”:
选择linux面板;
在刚才的页面往下翻找到下图中的命令并复制
使用SecureCRT工具或者是其它xshell工具连接你的服务器,我这里使用SecureCRT。输入刚才重置服务器密码的时候设置的用户名和密码。
把刚才的从宝塔页面复制过来的命令粘贴进来运行
运行结束之后,会得到两个地址,一个用户名一个密码,复制第一个地址到浏览器
出现下图的页面,把刚才运行结束后的用户名和密码填写进来
找到左边的安全这一栏,按下图中的操作开放端口
设置好端口之后,到软件商店中给你的服务器安装所需要的软件,比如tomcat,mysql,nginx等等,根据自身情况选择软件和版本进行安装
tomcat安装好之后,在浏览器输入你的服务器的IP地址(公)+8080端口,出现下图的页面说明服务器tomcat成功安装并启动
接着回到宝塔的控制面板,根据下图建立一个数据库。通过宝塔给服务器安装mysql数据库,安装成功之后它没有把初始的密码告诉你,所以使用sqlyong此类工具去连接数据库连接不上,所以按照下图的操作来设置数据库。如果你能通过其他的方式成功连接到数据库,可以忽略这一步。
要记住你的数据库用户名和密码
这里还要在这个页面设置一下你这个数据库的访问权限,一定要设置成所有人,我当时连接半天连接不上,后来才找到是这里的原因。如果你能连上数据库,可以忽略这一步。
接着使用sqlyong等数据库连接工具,输入你的服务器IP地址,刚才设置的数据库用户名和密码以及默认的3306端口连接数据库。
按照下图根据你自己的项目需求创建表。
表创建完了之后,把你的项目中的datasource的url,username,password改好。
3部署项目:
打包你的项目,可以打jar包也可以war包,我这里是war包,按照下图的操作进行打包;
打包成功之后,按照下图操作
找到你刚才打的war包,这里建议把**这个war包重新命名**,改一个易记的名字
接下来使用上传文件的工具,连接你的数据库,按照下图的操作,我用的是fileZilla,输入你服务器的IP地址(公),用户名,密码,端口22,连接。 连接上了之后,在服务器上找到你的tomcat目录下的webapps目录,把你的war包上传过去就行了。
接下来就可以在浏览器输入你的服务器IP地址(公)+8080端口+war包的名字。如果你一切顺利并且你的项目在部署之前可以在本地成功跑起来,那么你到这一步就能成功访问你的项目。如果不能访问,很可能出现404,403;我就出现过这两个问题,下面就说一下这两个问题我的解决过程。
4问题分析
4.1保证tomcat没问题
首先要保证你的服务器上的tomcat能成功启动,就是在浏览器输入你的服务器IP地址(公)+8080端口能购看到那只猫咪,如果看不到,去阿里云的控制台面板->安全组->配置规则,看看你是否开放了8080端口,然后再看看宝塔控制面板->安全,看看是否开放了8080端口。
如果端口都开放了,还是访问不了tomcat的默认页面。那么使用SecureCRT或者xshell等工具,连接你的服务器,在/www/server/tomcat/bin目录里面 执行 ./shutdown.sh 关闭tomcat,然后再执行 ./startup.sh,开启tomcat。如果还是不能见到那只猫咪,那就在宝塔面板的软件商店中找到已安装的tomcat把它卸载掉,重装。反复尝试,我试了三次成功出现那只猫咪。
4.2关于403的问题
403表示请求被拒就是权限不够,关于这个问题,可以百度其它的文章,里面有详细解决办法。我的解决办法是使用SecureCRT或者xshell等工具切换到tomcat所在目录的上一级目录,把tomcat目录的权限改成777,可以百度一下怎么改,这个做法感觉不太安全,但是确实解决了403。祝您好运。
4.4关于404问题
出现404问题,看看404页面最下面的那一行的原因,然后根据原因百度搜索,我当时的原因不记得了,我百度了许多文章都没有解决404的问题,最后怀疑是项目的问题,但是项目在本地又能成功跑起来。我重新建了一个springboot的hello world项目达成war包部署到tomcat,然后成功在页面出现了“hello world”,说明我的项目确实有问题。最后我在一个b站一个大佬的视频中看到他的解决方案,在springboot的启动类中继承SpringBootServletInitializer然后重写configure方法。
@SpringBootApplication
@MapperScan("com.ami.dao")
public class ApplicationStart extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return super.configure(builder);
}
public static void main(String[] args) {
SpringApplication.run(ApplicationStart.class,args);
}
}
然后surprise,成功访问…
4.5其它的建议
如果你还是没有成功访问
1:建议你确认一下你本地的jdk版本,tomcat版本和服务器的jdk版本,tomcat版本是否相差过大,然后安装相同的版本;
2:tomcat有三种部署方式,尝试其它两种方式;
3:尝试jar包部署;
4:如果你是springboot项目不要使用springboot自带的tomcat,你在你的电脑上装一个和服务器相同版本的tomcat,把你打包的项目放到本地的tomcat中去尝试,在本地的tomcat成功之后,再到服务器上去尝试。
5:如果你的项目在Windows系统的tomcat能运行,那么可以把你购买的服务器的系统重置为Windows系统然后再去尝试
6:按照购买服务器的流程开始,全部从头来一遍。
7:去交流群,公众号,知乎,csdn…这些地方找大佬
8:祝你好运。
如果有错误的地方,还请您耐心指出,最后感谢分享经验技巧的前辈们!