阿里云服务器ECS搭建后台(Windows Server 2012R2)

引言与名词

云服务器

  云服务器(Elastic Compute Service, ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提早购买硬件,便可迅速建立或释听任意多台云服务器。云服务器帮助您快速构建更稳定、安全的应用,下降开发运维的难度和总体IT成本,使您可以更专一于核心业务的创新。mysql

阿里云ECS

  阿里云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您下降 IT 成本,提高运维效率,使您更专一于核心业务创新。git

Windows Server

  Windows Server是微软在2003年4月24日推出的Windows 的服务器操做系统,其核心是Microsoft Windows Server System(WSS)。 每一个Windows Server都与其家用(工做站)版对应(2003 R2除外),Windows Server最新版本是Windows Server 2019。github

厂商选择

  服务器厂商有许多,华为、阿里、百度、腾讯、网易等。而服务器在一个软件系统开发中占据着重要的位置,因此要根据本身的需求选择适合本身的厂商和配置的服务器。若是是我的使用的话,推荐你们注册阿里云的新用户领取一个月免费的服务器,已经够本身使用了。这里也使用阿里云ECS Windows Server 2012R2 来搭建。web

1、领取阿里云服务器ECS

一、首先注册阿里云开放平台,经过开发者审核
二、免费领取一个月配置为单核1G1M带宽,系统选择Windows Server 2012R2。
  阿里新用户试用中心:free.aliyun.com/?spm=5176.8…
三、进入本身的阿里控制台,在领取ECS成功后,你就能够看到本身的服务器实例。
sql

ali

2、链接阿里云服务器ECS

一、在实例建立好以后,ECS会有3到5分钟的初始化时间,片刻以后就能够进行远程控制了。
二、点击实例后的远程链接,就能够直接经过阿里云的web控制台链接到ECS,web链接体验较差,推荐使用windows 远程桌面链接。
三、windows远程桌面链接:
  ①window+R 打开运行界面
  ②输入MSTSC
  ③打开远程链接后输入阿里云服务器的公网地址
  ④配置好用户名和密码,就能够本地远程访问了。
数据库

在这里插入图片描述

3、搭建项目运行环境

一、安装jdk,并配置环境变量
二、安装myaql
三、安装tomcat
四、安装navicatapache

4、发布项目到云服务器

一、使用本身的项目或者新建一个项目。(新建一个index.jsp就好了,我搭载的是本身的app后台)
二、在本地使用eclipse或myEclipse将项目导出成war包
  项目名右键------>Export------>WAR file
  选择指定路径导出,而后复制此war包进云服务器,将其放入tomcat的webApps目录下
三、在本地将数据库导出sql文件,并在云服务器构建数据库。
四、tomcat配置路径
  在tomcat的conf目录下的server.xml的Host节点下添加war包路径windows

<Context docBase="E:\apache-tomcat-7.0.57\apache-tomcat-7.0.57\webapps\wy-qianqian.war" path="/wy-qianqian" reloadable="true"/> 
复制代码

其中docBase为war包所在的全路径,path为项目映射。
五、配置好后打开tomcat的bin目录,找到startup.bat运行,就将tomcat部署到外网了
六、是否是很简单呢,嘿嘿,坑还多着呢,还有好多问题须要咱们解决呢。浏览器

5、隐藏8080端口号

在server.xml将8080改成80就好了,原理是默认不输入端口号时Tomcat自动路由为80端口。tomcat

6、请求乱码

一、接受get请求乱码是由于浏览器编码方式和request接收编码不一样,须要对其进行utf-8编码。
二、插入数据库乱码是由于mysql默认编码方式不是utf-8,解决方法:
  ①修改mysql的my.ini中的编码方式为utf-8default-character-set=utf8
  ②重启mysql服务,查看编码方式,修改结果以下
   查询语句为:show variables like 'character%';

server_sql
三、检查每张表的编码方式并设置为utf-8 四、乱码问题解决

7、使用tomcat搭建项目独立的图片服务器

一、在tomcat的conf文件的server.xml中添加Service节点。
  下面直接上代码,注意配置项目路径和映射路径为本身的路径。

<!--为了显示图片 -->
	<Service name="imgservice">
		<!--分配8089端口 -->
		<Connector port="8089" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="GBK" redirectPort="8443" />
		<Engine name="imgservice" defaultHost="localhost">
			<!--name 为项目访问地址 此配置的访问为http://localhost:8089 appBase配置Tomcat下webapps下的路径 -->
			<Host name="localhost" appBase="G:/webYang/images" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
				<!--资源地址:G:/webYang\images -->
				<Context path="images" docBase="G:/webYang/images" debug="0" reloadable="false" />
			</Host>
		</Engine>
	</Service>
复制代码

二、而后重启tomcat,图片服务器就搭载成功了,项目使用8080端口,图片使用8089端口,完美。

8、踩坑实录

一、tomcat运行闪退

  当运行startup.bat的时候,发现tomcat闪退。
  删除这段图片服务器代码就ok,是tomcat不能搭建服务器吗?
  各类度娘找不到解决方法,无奈只能靠本身。
  ①查看tomcat的log: logs目录下有对应当天的log,名为catalina.日期.log。
  ②打开后发现其报了一个错误:MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效。
   原来tomcat不支持中文注释。不能使用utf-8编码中文注释。删除全部注释,从新startup.bat,一切正常。

二、公网没法访问图片

  图片服务搭建后,localhost能够访问,可是外网没法使用公网ip访问图片。
  各类修改server.xml各类度娘,毫无做用。
  难道是由于8089被禁了吗?那为何localhost能够访问?
  原来阿里云服务器有本身的端口策略,而本身的实例没有开发8089端口,须要对外网建立8089端口的出入策略。

duankou
开放8089端口后,可使用公网ip正常访问图片。
Tomcat服务器并不适合处理静态资源,你们能够根据本身的状况搭建Nigix搭建图片服务,或者使用阿里云的OSS,OSS不只能够存储图片,也能够存储各类类型文件,使用方便。

9、测试

一、浏览器接口测试

在这里插入图片描述
二、公网图片测试
image
三、手机端接口调用
mobile

10、总结

阿里云ECS仍是挺好用的,也比较稳定,有需求的朋友能够尝试一下。
有的朋友说Windows Server 没有Linux稳定,后续我会对搭建LInux后台服务作讲解。
不过云服务器毕竟收费比较昂贵,接下来我会就内网穿透,使用本身的物理实机搭建服务器作讲解。


长路漫漫,菜不是原罪,堕落才是原罪。
个人CSDN:blog.csdn.net/wuyangyang_…
个人简书:www.jianshu.com/u/20c2f2c35…
个人掘金:juejin.im/user/58009b…
个人GitHub:github.com/wuyang2000
我的网站:www.xiyangkeji.cn
我的app(茜茜)蒲公英链接:www.pgyer.com/KMdT
个人微信公众号:茜洋 (按期推送优质技术文章,欢迎关注)
Android技术交流群:691174792

以上文章都可转载,转载请注明原创。

相关文章
相关标签/搜索