阿里雲服務器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

以上文章都可轉載,轉載請註明原創。

相關文章
相關標籤/搜索