zoukankan      html  css  js  c++  java
  • 安装4.x版本的express开发框架

    错误版本(未更新前的安装方法,更新后就不是这么安装了,好多网上的教程还是这种方法,所以这里先写明了,旧版这里是可以通过的,但是新版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!

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

    在官网找到了解决方法是 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 --
     
    如果发现express 版本为2.x怎么办?
    需要对express进行升级,执行命令
    npm install express --save
     
    php是世界上最好的编程语言,没有之一
  • 相关阅读:
    Coroutine in Java
    常见的开源日志(包括分布式)
    深入理解 Java G1 垃圾收集器--转
    卷积神经网络——本质上是在利用卷积做特征压缩,然后再全连接
    神经网络和反向传播算法——反向传播算法本质上是随机梯度下降,链式求导法则而来的
    LSTM入门学习——结合《LSTM模型》文章看
    LSTM入门学习——本质上就是比RNN的隐藏层公式稍微复杂了一点点而已
    LSTM模型
    syslog介绍-CS架构来采集系统日志
    NetFlow是一种数据交换方式,提供网络流量的会话级视图,记录下每个TCP/IP事务的信息
  • 原文地址:https://www.cnblogs.com/lookphp/p/5133766.html
Copyright © 2011-2022 走看看