就在剛才议忽,我上上周買的阿里云服務(wù)器可以通過外網(wǎng)訪問了迫筑,一把辛酸淚引润。如今越來越多的前端不務(wù)正業(yè)搞起后端來巩趁,力圖做全棧工程師,不過這不是我的目標,我只需要一個可以響應(yīng)前端請求的簡單服務(wù)器议慰,即使要研究應(yīng)該也是研究網(wǎng)絡(luò)配置之類的東西蠢古,概括的說就是前端偏后后端偏前的部分。
該配置教程廢話較多别凹,摻雜了很多吐槽的內(nèi)容草讶,文章順序基本上就是我填坑的順序,因為我比較累炉菲,所以整理順序什么的就以后再說吧堕战,哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
挑選服務(wù)器
算起來接觸計算機也得有20年了,從win95拍霜,win98嘱丢,到win me,win2000祠饺,winXp越驻,win7,win8吠裆,win10伐谈,大家看看全是微軟的產(chǎn)品。在國內(nèi)有個共同的認知试疙,就是用Linux的人比較牛逼诵棵。因此,我的第一個服務(wù)器當(dāng)然要用Linux祝旷,鑒于之前折騰過Ubuntu 14 TLS履澳,于是購買阿里云的時候就選擇了Ubuntu14 TLS x64。信心滿滿的登錄阿里云后臺怀跛,配置好域名和網(wǎng)址的解析之后打開瀏覽器輸入域名——回車距贷,啊嘞?難道不是應(yīng)該提示域名未備案嗎吻谋,為什么提示的是無忠蝗!法!訪漓拾!問阁最!此!站:Я健K僦帧!
初次連接服務(wù)器
再次登錄阿里云后臺低千,在實例后邊找到一個按鈕“遠程連接”配阵,點擊完后打開一個新頁面與此同時該頁面彈出一個提示框,上邊有個密碼,這個要記下來以后有用棋傍,而且只顯示一次救拉。點擊確定后又彈出一個輸入框,輸入剛才的密碼瘫拣,這樣就進入終端了近上。啊嘞,為什么和我想的不一樣拂铡,為什么是命令行的模樣,為什么不是曾經(jīng)用過的ubuntu的模樣葱绒,經(jīng)過百度得知:服務(wù)器上的linux系統(tǒng)只有終端的模式感帅,GUI比較消耗系統(tǒng)資源所以并沒有安裝。當(dāng)然地淀,可以自己安裝GUI失球,不過作為一個立志成為偉大程序猿的人,當(dāng)然不能使用GUI了帮毁,熟練使用終端(命令行在linux里叫終端)的人才是程序猿里的金剛猿实苞。。烈疚。既然要用終端黔牵,那么我還是使用xshell工具吧。
使用xshell連接
xshell的安裝方式和連接方式一抓一大把爷肝,這里就不講了猾浦,直接講連接上遠程服務(wù)器之后發(fā)生的事。
寫好配置信息后點擊連接灯抛,這里要求輸入賬號金赦,第一次使用嘛,賬號名自然是root对嚼,密碼嘛夹抗,之前不是有個彈出框里給過密碼了嗎,點擊回車服務(wù)器就會連上了吧哈哈哈哈哈纵竖。想多了漠烧,那是不可能的!Dト贰沽甥!密碼不正確,為什么不正確乏奥,因為之前那個密碼并不是ECS里這個實例的密碼摆舟。那么實例密碼在哪呢,再次百度得知,這個密碼是在實例創(chuàng)建的時候設(shè)置的恨诱。我去媳瞪,這實例又不是我創(chuàng)建的,只是我買的照宝,翻遍了所有的短信和郵件蛇受,阿里云都沒有告訴我他們把實例密碼設(shè)置成了什么,怎么辦厕鹃?嗯兢仰,我告訴你怎么辦:
在阿里云控制臺-實例-更多-重置密碼,直接重置密碼而且不用輸入原密碼驗證剂碴,修改之后別忘了重啟實例把将,好了,重新打開xshell輸入root&密碼登錄服務(wù)器吧忆矛。
配置nodejs
從小伙伴口里得知察蹲,購買的服務(wù)器只是一個空間,即使預(yù)裝了操作系統(tǒng)也只是一個空空的操作系統(tǒng)催训,網(wǎng)站服務(wù)器什么的需要自己建設(shè)G⒁椤!OMG漫拭,我以為所謂帶了操作系統(tǒng)的服務(wù)器就可以直接訪問亚兄,最起碼也能給我返回一個Hello World吧。鑒于本人是前端采驻,所以用nodejs搭建服務(wù)器應(yīng)該是個不錯的選擇儿捧,而且我要求不高,能響應(yīng)請求就可以了挑宠,數(shù)據(jù)庫什么的暫時沒需求菲盾,等用到的時候再說吧。
安裝node及express
安裝node有兩種方式各淀,一種是下載源碼后編譯懒鉴,一種是下載已經(jīng)編譯好的包,我選的是第二種碎浇,為什么呢临谱,因為源碼編譯過程中會報一個g++版本過低的錯誤,據(jù)說解決這個問題之后可能還會報Python的錯誤奴璃,本著效率最大化的想法悉默,直接選擇已經(jīng)編譯好的包絕對正確,先到nodejs的下載頁面選好要下載的版本苟穆,執(zhí)行:
wget https://nodejs.org/dist/v6.10.3/node-v6.10.3-linux-x64.tar.gz
下載完畢后執(zhí)行:
tar node-v6.10.3-linux-x64.tar.gz
對文件進行解壓縮抄课,這樣nodejs就被解壓到了root/node-v6.10.3-linux-x64文件下唱星,可以移動到其他目錄里。執(zhí)行:
vim /etc/profile
下面要修稿profile文件跟磨,/etc/profile儲存了系統(tǒng)的環(huán)境變量间聊,需要使用root權(quán)限登錄并修改權(quán)限之后方可編輯:
chmod u+w /etc/profile
為文件賦予write權(quán)限。
打開profile文件抵拘,按i開啟編輯模式哎榴,在最后一行添加
export NODE_HOME=你放置node的文件目錄 export PATH=$NODE_HOME/bin:$PATH
點擊ESC退出編輯,輸入:wq
保存并退出僵蛛,這樣就把nodejs添加到了環(huán)境變量中尚蝌,以后可以全局的使用node和npm了,否則的話會報-bash: node: command not found
這個錯誤充尉,輸入node -v
和npm -v
如果順利輸出了版本號驼壶,說明node安裝成功了。
安裝完node后喉酌,express的安裝水到渠成,和所有npm包的安裝方法一樣泵喘,直接輸入
npm install express -g
全局的安裝就好了泪电,cd到srv目錄下建立一個文件夾www,進入該文件夾輸入express chat-vue
創(chuàng)建一個node項目纪铺,express后面就是你的項目名相速。express會根據(jù)模板自動創(chuàng)建一套文件,包括:app.js并不是入口文件鲜锚,入口文件在bin/www里邊突诬,運行www
node www
,這個node模板就被啟動了芜繁。使用node xxx運行的項目在退出終端時會同步關(guān)閉旺隙,這當(dāng)然不是我們想要的結(jié)果,這里推薦使用pm2骏令,一個進程管理器蔬捷,他會在你關(guān)閉終端連接后繼續(xù)幫你運行服務(wù)器上的node程序。當(dāng)然也有人推薦使用forever榔袋,不過比起pm2高大上的界面周拐,我就不說什么了,嘿嘿嘿
安全組設(shè)置
真的萬事俱備只欠東風(fēng)了嗎凰兑,哈哈哈哈妥粟,還是太天真。阿里云有個東西叫做安全組設(shè)置吏够,就是那些ip可以訪問勾给,哪些端口可以被訪問之類的限制滩报,默認的只有-1,3389,22三個端口,自己設(shè)置的端口需要創(chuàng)建新規(guī)則锦秒,否則等待你的還是無法訪問此站B恫础!旅择!
依次打開云服務(wù)器ECS-網(wǎng)絡(luò)和安全-安全組惭笑,選擇實例后面的配置規(guī)則,選擇右上角的快速創(chuàng)建規(guī)則生真,按照圖片設(shè)置:
點擊確定保存規(guī)則沉噩。
打開xshell連接服務(wù)器,找到srv/www/下的項目文件中的bin文件中的www柱蟀,使用vim打開川蒙,在29行 server.listen(port);里加一個參數(shù)host,一定要寫內(nèi)網(wǎng)IP长已,寫在port后邊畜眨,如果不寫,默認ip地址為127.0.0.1术瓮。做完上邊那些設(shè)置康聂,通過域名或者ip加端口號就可以順利訪問服務(wù)器了,沒有問題的話頁面上會顯示welcome to express胞四,大功告成恬汁。