node.js下用Express搭建服務器(內含多種坑爹報錯解決方法)


 

如題

環境:windows 8 64bit\node.js v0.10.33

我覺得有必要說一下,我把node.js沒有裝在默認目錄下,而是自定義路徑

E:\Program\nodejs

我覺得我后來遇到的很多問題與此有關。

好,然后我就開心地打開node,在cmd下輸入

npm install -g express

它就果不其然地報錯了,確切的錯誤我沒記得,百度了下好像是-g那個參數的問題(開始不知道這個參數什么意思,后來才明白,就是裝到node_gloabl目錄下),所以我就把-g去掉,cd到我要安裝的工作目錄,就順利安裝了(確切說,是只安裝到當前工作目錄下)。繼續按照網上教程,創建express項目,cmd下輸入

express blog

它果不其然又報錯,express既不是內部命令也不是外部命令,百度了下發現,原來新版本(我的是4.9.0)沒有自帶express-generator,也就是不能使用express命令創建項目,還是要自己下在該模塊,所以繼續在cmd下輸入

npm install express-generator

這樣就可以正常使用express命令創建項目了(注意只能在該目錄下使用),我創建了一個叫blog的項目,接下來就是啟動服務了,順便說下,我在app.js內加入了端口監聽的代碼

var server = app.listen(3000, function() {
    console.log('Listening on port %d', server.address().port);
});

這樣就不用在cmd內輸入了。接着在cmd下輸入

node app

它果不其然又報錯了,看了下,缺少模塊,原來好多模塊沒有裝,我列一下

'serve-favicon'\morgan'\'cookie-parser'\'body-parser'

很簡單,按照之前的方法把這些模塊裝上就可以了。之后再啟動服務就能得到歡迎頁面

這個項目到這里就算安裝好了,下面我想說下全局模塊的事,也就是不用每個項目都裝一遍這些模塊,用的時候直接調用就可以。對於本版本node,具體做法如下:

在node.js的安裝目錄下,新建兩個文件夾,"node_global"和"node_cache",再在cmd下輸入如下代碼

npm config set prefix "E:\Program\nodejs\node_global"
npm config set cache "E\Program\nodejs\node_cache"

然后在其中安裝下express,cmd輸入

npm install -g express

接下來就是在計算機屬性那里添加環境變量,在環境變量里新添加NODE_PATH,變量值為E:\Program\nodejs\node_global\node_modules,如圖

如果沒有意外的話,全局模塊就這樣設置好了,以后再安裝模塊時加入-g參數,就會自動裝在node_global\node_modules目錄下,調用很方便。為了檢測是否可行,可以在node下輸入

require('express')

如果返回express的相關信息,就說明設置無誤。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM