写在前面
出于好奇,我用学生优惠租了一台阿里云服务器,打算做一些Java web的开发,但是毕竟是第一次接触这样的东西,还是比较懵逼,在这个过程中遇到了一些问题(肯定会遇到问题的),但是呢,在网上搜解决办法的时候,总是历经波折才能找到我最后想要的东西,所以我想把我配置阿里云的时候踩过的坑填一下,如果你按照我的方法成功解决的问题,别忘了给我点个赞
不定期续更
购买服务器
学生的话,阿里推出了一个叫云翼计划的产品,通过学生认证之后可以享受超便宜的价格,我的账号是淘宝账号,之前就有过学生认证。云翼计划的入口在这儿云翼计划
配置服务器
这里有一篇非常详细完整的教程,亲测有效,阿里云ECS建站 超详细完整全套教程(简书)
设置安全组
部署helloworld并访问
要看以下教程,请先确保你把上面的东西都做好了:Java和Tomcat环境搭好,购买了域名并且可以使用,本地有Java开发环境和IDEA
不过上面的教程之涉及到在服务器上配置Java与Tomcat环境,相当于你只是搭了一个房子,但是里面还没有任何家具,不能入住,所以接下来我们来买一些家具,首先打开IDEA,新建一个项目,选择web application。
在web目录下找到index.jsp 在<body>
标签下写一句hello world
因为部署到网站上的时候我们需要一个war包,所以我们现在想办法弄一个出来
点击右上角的这个图标
按照图中步骤点击(还有要先点击绿色的加号才能出来那个菜单)
然后添加一个content,存放路径选择它默认的就行,一般都是在war包的相同目录
这样就设置好了,下面我们来生成一个war包 执行Build->Build Artifacts->build命令
build之后在这个out目录下找war包
打开xshell和xftp工具,连接到云服务器,将webhelloworld_war.war放到云服务器的/usr/java/tomcat/apache-tomcat-8.5.20/webapps/下
好,我们要稍微修改一些东西 ,不要怕,很简单的一行而已,不要每次提到修改配置就头大。
修改/usr/java/tomcat/apache-tomcat-8.5.20/conf/下的server.xml:
1. 修改host节点的name为你的云服务器的域名,如
2. 在host节点下加一个节点
<Context path="" docBase="webhelloworld_war" reloadable="true"/>
其中webhelloworld_war这个就是你的war包的包名,也就是你的项目名
顺便提一下,如果要修改这个xml文件,你可以在xshell中用vi修改,非常秀操作,当然也有非常接地气的方法,可以用xftp将server.xml下载到本地然后用sublime text来改,然后再上传上去。
好了修改完配置文件之后还有一件重要的事情别忘了,就是重启一下Tomcat
用xshell进入/usr/java/tomcat/apache-tomcat-8.5.20/bin/
执行
./shutdown.sh
然后再执行
./startup.sh
这里提一下,如果停止Tomcat时出现停止失败,提示 .ConnectException: Connection refused SEVERE: Could not contact localhost:8005. Tomcat may not be running.报错的,原因是Tomcat的内存太小了,需要设置一下虚拟内存,解决方法参见这篇博客
在Linux系统里运行shutdown.sh命令关闭Tomcat时出现错误提示
亲测有效
好,现在返回正题,在浏览器中输入 你的云服务器的域名:8080 比如(:8080)就可以访问到你刚才部署上去的程序啦
像这样子