http-server服務(wù)故障排除及NodeJS部署中的環(huán)境變量要點(diǎn)(win2016、win10下安裝http-server不成功的解決方案)

這篇文章雖然是介紹http-server,但對(duì)于了解Nodejs邏輯有益付鹿。

什么是http-server

Http-server是一個(gè)輕量級(jí)的基于nodejs的http服務(wù)器物蝙,它最大好處就是:
可以使任意一個(gè)目錄成為服務(wù)器的目錄炎滞,完全拋開后臺(tái)的沉重工程,直接運(yùn)行想要的js代碼诬乞。

項(xiàng)目的Npm網(wǎng)址:https://www.npmjs.com/package/http-server

簡單的說册赛,如果你做了一個(gè)靜態(tài)網(wǎng)頁,又不想部署IIS或apache震嫉,則你可以直接安裝hppt-server服務(wù)森瘪,從而快速將當(dāng)前目錄作為網(wǎng)站運(yùn)行,如下圖所示:

http-server運(yùn)行效果

它有一系列參數(shù)票堵,比如作為代理扼睬、加載SSL證書,下面附幾個(gè)簡單的命令:

安裝

npm i -g http-server

運(yùn)行

進(jìn)入你的網(wǎng)站目錄悴势,啟動(dòng)powershell管理器或命令行窗宇,運(yùn)行:

http-server

直接打開瀏覽器
如果你的目錄中有index.html,想一次性直接打開瀏覽器特纤,則可以運(yùn)行下面命令:

http-server -o

運(yùn)行結(jié)束军俊,你可以直接關(guān)閉Powerserver或命令行窗口,或者執(zhí)行ctrl+c結(jié)束即可捧存。

下圖就是安裝成功的界面:


安裝成功界面

安裝出錯(cuò)的解決方法

有網(wǎng)友反饋粪躬,雖然執(zhí)行了上面的npm i -g http-server,但是依然跑不出http-server昔穴,這種情況一般出現(xiàn)在早期的windows server 2016短蜕、win10早期版本上。
那要如何解決傻咖?

雖然總是提示安裝成功朋魔,運(yùn)行出了前面的安裝成功界面,但再運(yùn)行http-server時(shí)卿操,還是報(bào)錯(cuò)警检,如下圖所示:

http-server運(yùn)行不成功

這到底是什么原因呢?下面我們來講解排查方法

第一步:選擇正確的安裝權(quán)限

一般說來害淤,下載安裝扇雕,并用命令行查看版本;如果提示輸入命令找不到等窥摄,可能是沒有安裝成功镶奉,或者是環(huán)境變量引起的。

如果在提示安裝不成功可能是win10權(quán)限問題,最好使用管理員模式運(yùn)行powershell或cmd安裝哨苛。


選擇管理員權(quán)限

第二步:檢查你node與npm版本

一般說來鸽凶,需要部署Node和npm最新版本,相關(guān)教程你可以訪問www.z01.com 官網(wǎng)檢索建峭。
他們的命令分別是:
``
node -v


npm -v


比如我的電腦當(dāng)前版本玻侥,不是最新也不能是兩三年前的舊版本:
![檢查node和npm版本](http://www.z01.com/UploadFiles/Anony/content/md/EImz4Z4ukW.jpg)


### 第三步:選擇npm的安裝路徑
好多電腦的npm安裝路徑不是在nodejs的目錄下,造成安裝路徑不同亿蒸,運(yùn)行命令是:

npm config ls
``
運(yùn)行后界面如下提示:

image

上圖即告訴我們npm是安裝在E盤凑兰。

我們最好將其修改為默認(rèn)安裝在nodejs目錄下,方便查找和管理包边锁,命令:

npm config set prefix "C:\Program Files\nodejs\node_modules"
npm config set cache "C:\Program Files\nodejs\node_modules"
修改Npm安裝目錄到c盤nodejs目錄下

再次運(yùn)行npm config ls檢查是否修改成功:

npm默認(rèn)安裝路徑修改成功

在npm目錄下再次安裝

我們進(jìn)入npm的安裝目錄姑食,即C:\Program Files\nodejs\node_modules下執(zhí)行npm i -g http-server,并運(yùn)行http-server茅坛,會(huì)看到完全安裝成功矢门,并能成功運(yùn)行:

在nodejs目錄下安裝并運(yùn)行成功

好了,到這里灰蛙,我們似乎已經(jīng)安裝好了http-server服務(wù),但是在其它目錄下運(yùn)行隔躲,依然報(bào)錯(cuò)摩梧,如下圖:

http-server運(yùn)行不成功

這里我們想到, 一定是全局環(huán)境變量出了問題宣旱,嘿嘿仅父,下面開始終極解決方案,定義全局變量解決問題浑吟。

nodejs全局變量解決方案

檢測(cè)nodejs在windows中全局變量的有一個(gè)命令:

npm config get prefix 

比如下圖則輸出我的nodejs系統(tǒng)全局變量地址在:C:\Program Files\nodejs\node_modules

既然找到問題笙纤,那么就好解決了。
打開控制面板组力,啟動(dòng)系統(tǒng)-高級(jí)系統(tǒng)設(shè)置-高級(jí)-環(huán)境變量:

image
image

定義個(gè)人環(huán)境變量

首先是在上方用戶變量區(qū)省容,將nodejs的目錄加上,如果已經(jīng)有了一條內(nèi)容燎字,你可以采用半角英文的分號(hào);來隔離腥椒,如下圖示:

用戶環(huán)境變量

為了避免新手迷糊,還有一種情況是用戶環(huán)境變量已經(jīng)有了2條或多條候衍,則編輯時(shí)會(huì)有一個(gè)列表笼蛛,這樣就簡單多了,你新建一條拷進(jìn)去就行了:


用戶環(huán)境變量中多條記錄操作方法

定義系統(tǒng)環(huán)境變量

接下來定義系統(tǒng)環(huán)境變量蛉鹿,基本操作和個(gè)人操作無異滨砍,但如果沒有path這一項(xiàng)時(shí),需要新建它,并命名為NODE_PATH惋戏,如下圖示:


定義系統(tǒng)變量中的NODE_PATH

操作完成领追,為了讓大家學(xué)習(xí)方便,我們截一個(gè)最終的圖片:


終極效果

點(diǎn)擊確定日川,到了這里就結(jié)束了蔓腐。

我們現(xiàn)在用shell進(jìn)入任何目錄運(yùn)行看是否成功。
看龄句,小編在D盤根目錄回论,用PowerShell運(yùn)行http-server成功跑起來了:

d盤根目錄運(yùn)行http-server成功

好了,下面就等著你去codding了分歇,更便捷的http-server服務(wù)在等你傀蓉,為你調(diào)試而生。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末职抡,一起剝皮案震驚了整個(gè)濱河市葬燎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缚甩,老刑警劉巖谱净,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異擅威,居然都是意外死亡壕探,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門郊丛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來李请,“玉大人,你說我怎么就攤上這事厉熟〉贾眩” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵揍瑟,是天一觀的道長白翻。 經(jīng)常有香客問我,道長绢片,這世上最難降的妖魔是什么嘁字? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮杉畜,結(jié)果婚禮上纪蜒,老公的妹妹穿的比我還像新娘。我一直安慰自己此叠,他們只是感情好纯续,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布随珠。 她就那樣靜靜地躺著,像睡著了一般猬错。 火紅的嫁衣襯著肌膚如雪窗看。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天倦炒,我揣著相機(jī)與錄音显沈,去河邊找鬼。 笑死逢唤,一個(gè)胖子當(dāng)著我的面吹牛拉讯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播鳖藕,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼魔慷,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了著恩?” 一聲冷哼從身側(cè)響起院尔,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎喉誊,沒想到半個(gè)月后邀摆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡伍茄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年栋盹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片幻林。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖音念,靈堂內(nèi)的尸體忽然破棺而出沪饺,到底是詐尸還是另有隱情,我是刑警寧澤闷愤,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布整葡,位于F島的核電站,受9級(jí)特大地震影響讥脐,放射性物質(zhì)發(fā)生泄漏遭居。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一旬渠、第九天 我趴在偏房一處隱蔽的房頂上張望俱萍。 院中可真熱鬧,春花似錦告丢、人聲如沸枪蘑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽岳颇。三九已至照捡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間话侧,已是汗流浹背栗精。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瞻鹏,地道東北人悲立。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像乙漓,于是被迫代替她去往敵國和親级历。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354