错误版本(未更新前的安装方法,更新后就不是这么安装了,好多网上的教程还是这种方法,所以这里先写明了,旧版这里是可以通过的,但是新版4.x就不行了,请用分割线下边的方法)

 

本文演示在Linux上安装NodeJS及Express开发框架

 

软件环境:

VMware 9

CentOS 6.5

NodeJS v0.10.24

 

安装过程:

Step 1、确认服务器有nodejs编译及依赖相关软件,如果没有可通过运行以下命令安装。

[root@BobServerStation local]# yum -y install gcc gcc-c++ openssl-devel


Step 2、下载NodeJS源码包并解压。

[root@BobServerStation local]# wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz

[root@BobServerStation local]# tar zxvf node-v0.10.24.tar.gz

[root@BobServerStation local]# cd node-v0.10.24


Step 3、配置、编译、安装。

[root@BobServerStation node-v0.10.24]# ./configure --prefix=/usr/local/node

[root@BobServerStation node-v0.10.24]# make && make install

将持续3-4min....

 

Step 4、接下来配置Node环境

[root@BobServerStation node-v0.10.24]# vim /etc/profile

 

#set nodejs env

export NODE_HOME=/usr/local/node

export PATH=$NODE_HOME/bin:$PATH

export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH

 

[root@BobServerStation node-v0.10.24]# source /etc/profile       --重启生效

 

Step 5、测试是否安装成功

[root@BobServerStation node-v0.10.24]# node -v

v0.10.24

出现NodeJS版本号则表示OK。

 

Step 6、NodeJS之Hello World

[root@BobServerStation node-v0.10.24]# node

> console.log(”Hello NodeJS, I'm Bob.Z“);

Hello NodeJS, I'm Bob.Z

undefined

输出:Hello NodeJS, I'm Bob.Z

 

Step 7、安装Express开发框架

[root@BobServerStation local]# npm install express -g

 

Step 8、创建Demo项目

[root@BobServerStation local]# express DemoApp

[root@BobServerStation local]# cd DemoApp

[root@BobServerStation DemoApp]# 

 

Step 9、进入项目目录并安装项目依赖组件

[root@BobServerStation local]# cd DemoApp

[root@BobServerStation DemoApp]# npm install

 

Step 10、依赖组件安装完成后启动app

[root@BobServerStation DemoApp]# node app

Express server listening on port 3000

 

最后通过浏览器访问服务器3000端口,页面显示,

Express

Welcome to Express

 

Node + Express成功运行,顺利开启Node开发之旅,enjoy it!


来源: http://zhaohe162.blog.163.com/blog/static/38216797201402234212981/

 

我本地按教程进行安装的结果

express实现文件下载_express实现文件下载

 

在官网找到了解决方法是 express 4需要通过 下面的命令安装

npm install -g express-generator

 

-------------------------------------------------------------分割线-----------------------------------------------------------------------------

 

新版4.x的安装方法

首先,我们需要安装express库。在Express3.6.x之前的版本,Express需要全局安装的,项目构建器模块是合并在Express项目中的,后来这个构建器被拆分出来,独立成为了一个项目express-generator,现在我们只需要全局安装express-generator项目就行了。

[root@localhost nodejs]# npm install -g express-generator
/root/git/nvm/versions/node/v4.2.1/bin/express ->/root/git/nvm/versions/node/v4.2.1/lib/node_modules/express-generator/bin/express
express-generator@4.13.1/root/git/nvm/versions/node/v4.2.1/lib/node_modules/express-generator
├── sorted-object@1.0.0
├── mkdirp@0.5.1(minimist@0.0.8)
└── commander@2.7.1(graceful-readlink@1.0.1)

至此,express就安装完成了。

安装好express-generator包后,我们在命令行就可以使用express命令了,如下。

[root@localhost DemoApp]# express -V
4.13.1
[root@localhost DemoApp]# express -h
Usage: express [options][dir]
Options:
-h,--help output usage information
-V,--version output the version number
-e,--ejs add ejs engine support (defaults to jade)
--hbs add handlebars engine support
-H,--hogan add hogan.js engine support
-c,--css <engine> add stylesheet <engine> support (less|stylus|compass|sass)(defaults to plain css)
--git add .gitignore
-f,--force force on non-empty directory

现在可以开始创建项目了,如下:express DemoApp

[root@localhost nodejs]# express DemoApp
create :DemoApp
create :DemoApp/package.json
create :DemoApp/app.js
create :DemoApp/public
create :DemoApp/public/javascripts
create :DemoApp/public/images
create :DemoApp/public/stylesheets
create :DemoApp/public/stylesheets/style.css
create :DemoApp/routes
create :DemoApp/routes/index.js
create :DemoApp/routes/users.js
create :DemoApp/views
create :DemoApp/views/index.jade
create :DemoApp/views/layout.jade
create :DemoApp/views/error.jade
create :DemoApp/bin
create :DemoApp/bin/www
install dependencies:
$ cd DemoApp&& npm install
run the app:
$ DEBUG=DemoApp:* npm start

创建完项目,系统提示需要安装依赖,进入项目目录,下载依赖并安装,如下:cd DemoApp/&& npm install

[root@localhost nodejs]#cd DemoApp/&& npm install
cookie-parser@1.3.5 node_modules/cookie-parser
├── cookie@0.1.3
└── cookie-signature@1.0.6
debug@2.2.0 node_modules/debug
└── ms@0.7.1
serve-favicon@2.3.0 node_modules/serve-favicon
├── etag@1.7.0
├── fresh@0.3.0
├── ms@0.7.1
└── parseurl@1.3.0
morgan@1.6.1 node_modules/morgan
├── on-headers@1.0.1
├── basic-auth@1.0.3
├── depd@1.0.1
└── on-finished@2.3.0(ee-first@1.1.1)
express@4.13.3 node_modules/express
├── escape-html@1.0.2
├── merge-descriptors@1.0.0
├── cookie@0.1.3
├── array-flatten@1.1.1
├── cookie-signature@1.0.6
├── utils-merge@1.0.0
├── content-type@1.0.1
├── methods@1.1.1
├── vary@1.0.1
├── etag@1.7.0
├── path-to-regexp@0.1.7
├── serve-static@1.10.0
├── range-parser@1.0.3
├── content-disposition@0.5.0
├── fresh@0.3.0
├── parseurl@1.3.0
├── depd@1.0.1
├── qs@4.0.0
├── proxy-addr@1.0.10(forwarded@0.1.0, ipaddr.js@1.0.5)
├── finalhandler@0.4.0(unpipe@1.0.0)
├── on-finished@2.3.0(ee-first@1.1.1)
├── type-is@1.6.10(media-typer@0.3.0, mime-types@2.1.9)
├── send@0.13.0(destroy@1.0.3, statuses@1.2.1, ms@0.7.1, mime@1.3.4, http-errors@1.3.1)
└── accepts@1.2.13(negotiator@0.5.3, mime-types@2.1.9)
body-parser@1.13.3 node_modules/body-parser
├── content-type@1.0.1
├── bytes@2.1.0
├── depd@1.0.1
├── qs@4.0.0
├── on-finished@2.3.0(ee-first@1.1.1)
├── http-errors@1.3.1(statuses@1.2.1, inherits@2.0.1)
├── iconv-lite@0.4.11
├── type-is@1.6.10(media-typer@0.3.0, mime-types@2.1.9)
└── raw-body@2.1.5(unpipe@1.0.0, bytes@2.2.0, iconv-lite@0.4.13)
jade@1.11.0 node_modules/jade
├── commander@2.6.0
├── character-parser@1.2.1
├── void-elements@2.0.1
├── mkdirp@0.5.1(minimist@0.0.8)
├── constantinople@3.0.2(acorn@2.7.0)
├── clean-css@3.4.9(commander@2.8.1, source-map@0.4.4)
├── jstransformer@0.0.2(is-promise@2.1.0, promise@6.1.0)
├── transformers@2.1.0(promise@2.0.0, css@1.0.8, uglify-js@2.2.5)
├── with@4.0.3(acorn@1.2.2, acorn-globals@1.0.9)
└── uglify-js@2.6.1(async@0.2.10, uglify-to-browserify@1.0.2, source-map@0.5.3, yargs@3.10.0)

启动项目服务 :npm start

root@localhost DemoApp]#npm start
>DemoApp@0.0.0 start /root/nodejs/DemoApp
> node ./bin/www
GET /200382.317 ms -170
GET /stylesheets/style.css 20017.834 ms -111
GET /favicon.ico 40456.666 ms -1015
GET /favicon.ico 40439.911 ms -1015
GET /30458.911 ms --
GET /stylesheets/style.css 3041.839 ms --
GET /30447.751 ms --
GET /stylesheets/style.css 3040.280 ms --
GET /30453.378 ms --
GET /stylesheets/style.css 3040.258 ms --

项目启动成功,打开浏览器 http://localhost:3000,就可以看到显示的页面了。

express实现文件下载_express实现文件下载_02

 

如果发现express 版本为2.x怎么办?

需要对express进行升级,执行命令

npm install express --save