無痛安裝 NodeJS 和 Node Framework Express

标签: javascript NodeJS Ubuntu Express | 发表时间:2011-08-11 15:25 | 作者:appleboy Hming
出处:http://blog.wu-boy.com
nodejs-light

NodeJS 是目前當紅的 Web 2.0 技術,去年 COSCUP 2010 就有 KKBOX 資深工程師 ericpi 來探討這個議題,NodeJS 背後使用了 V8 引擎為基礎,沒看過用純 JS 來當 Server-Side 吧,台灣很紅的 Plurk 也是大量使用 NodeJS,然而每開發一種語言,就會想開始找搭配的 Framework,那就首推 Node Framework Express 來撰寫程式,本篇是要介紹如何在 Ubuntu 10.10 無痛安裝 nodejs + express。

下載 Nodejs 原始碼

直接到官網下載 Stable 的版本吧,目前是 node-v0.4.10.tar.gz,也可以先看看 API Document

# wget http://nodejs.org/dist/node-v0.4.10.tar.gz

安裝 Ububtu 相關套件

$ sudo apt-get install python libssl-dev g++

下面會使用最原始的編譯方式,所以必須安裝 g++ 套件,否則下 ./configure 的時候,會吐出來沒有安裝過的套件。

安裝 Nodejs 套件

兩種方法:1.用 apt-get install nodejs 2. 用 tar 方式原始編譯

原始編譯過程如下:

$ mkdir ~/opt/ && cd opt
$ tar -zxvf node-v0.4.10.tar.gz
$ cd node-v0.4.10/
$ ./configure --prefix=~/opt/node

到這裡,如果 compiler 成功,就會產生出 Makefile,如果中間遇到錯誤訊息,大概都是套件沒有安裝,接著執行

$ make && make install

將執行檔路徑放到 PATH

修改 ~/.bashrc,增加底下

export PATH="$HOME/opt/bin/:$PATH"
export NODE_PATH="$HOME/opt/node:$HOME/opt/node/lib/node_modules"
# 重新執行 shell 或者是重新登入即可
source ~/.bashrc

上面安裝步驟都可以參考 Building and Installing Node.js

安裝 Nodejs 管理套件 npm

npm 就類似 Ruby 的 gem,安裝方式很容易

curl http://npmjs.org/install.sh | sh

假如您是用 apt-get 安裝 nodejs 的話,請修改 install.sh

# make sure that node exists
node=`which node 2>&1`

改成

# make sure that node exists
node=`which nodejs 2>&1`

接下來就是要安裝我們的開發環境 Express 這套 Nodejs Framework

安裝 Express

安裝方式可以參考 Express Guide

$ npm install express -gd

解釋一下 -gd 的參數說明,-g 的用意是 executable install globally,也就是我們要在任何地方都可以執行 express 指令,另外 -d 則是將 node_modules 都安裝到 node lib 的目錄裡面,這樣開 express project 就不用再 npm install -d 了,大家可以透過底下兩個指令來瞭解

$ npm list -g
$ npm list

建立 Express 專案

$ express foo && cd foo

直接執行 node app.js 如下

Express server listening on port 3000 in development mode

看到此訊息就是代表成功了,直接打開瀏覽器 http://localhost:3000 可以看到 Express 歡迎畫面

更多 Express Example 可以參考 github 上面的 Express 專案

Ref:

node.js第二講:安裝node.js與express.js
node.js第一講:簡介

Related View

相关 [nodejs node framework] 推荐:

無痛安裝 NodeJS 和 Node Framework Express

- Hming - 小惡魔 - 電腦技術 - 工作筆記 - AppleBOY
直接到官網下載 Stable 的版本吧,目前是 node-v0.4.10.tar.gz,也可以先看看 API Document. 安裝 Ububtu 相關套件. 下面會使用最原始的編譯方式,所以必須安裝 g++ 套件,否則下 ./configure 的時候,會吐出來沒有安裝過的套件. 兩種方法:1.用 apt-get install nodejs 2.

nodejs上HTML分析利器node-jquery

- - 博客园_首页
      首先描述产生这篇随笔的场景:我需要获取项目在jenkins构建的最新Javascript Coverage显示在供管理层次查看的项目情况Report上,但是由于jenkins没有直接的API取得数据所需数据,所以我们只能从自建的容器发布Javascript Coverage数据API,供Report项目使用.

什么是Node?

- We_Get - 博客园新闻频道
译者按:前不久Oreilly出了一本小册子“What is Node?”,扼要的讲解了Node的身世和所适用的场景,作者文笔轻松流畅、内容充实,是非常难得的学习资料.   译文全文:http://jayli.github.com/whatisnode/index.html.   作者:Brett McLaughlin ,原文:What is Node?.

Node入门

- - CSDN博客编程语言推荐文章
作者:  Manuel Kiessling. 翻译:  goddyzhao &  GrayZhang &  MondayChen. 本书致力于教会你如何用Node.js来开发应用,过程中会传授你所有所需的“高级”JavaScript知识. 本书绝不是一本“Hello World”的教程. 你正在阅读的已经是本书的最终版.

浅析Hadoop Secondary NameNode,CheckPoint Node,Backup Node

- - CSDN博客云计算推荐文章
Hadoop SecondaryNameNode并不是Hadoop 第二个NameNode,它不提供NameNode服务,而仅仅是NameNode的一个工具. 这个工具帮助NameNode管理Metadata数据. NameNode的HDFS文件信息(即Metadata)记录在内存中,client的文件写操作直接修改内存中的Metadata,同时也会记录到硬盘的Edits文件,这是一个Log文件.

[译]什么是Node?

- blacktulip - Taobao UED Team
译者按:前不久Oreilly出了一本小册子“What is Node?”,扼要的讲解了Node的身世和所适用的场景,作者文笔轻松流畅、内容充实,是非常难得的学习资料. 译文全文:http://jayli.github.com/whatisnode/index.html. 作者:Brett McLaughlin ,原文:What is Node?.

nodejs快速入门

- AreYouOK? - 淘宝数据平台与产品部官方博客 tbdata.org
主要介绍了一下node.js的发展, 现状, 安装, 使用.

NodeJS学习笔记

- - Web前端 - ITeye博客
今天开始学习NodeJS,在这里做个笔记,记录一下我的学习历程,也方便以后参考. Node.js® 是一个基于  Chrome V8 引擎 的 JavaScript 运行时. 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.

用node作桌面开发

- InterMa - CNode社区
node的定位是,server-side javascript. 但程序员最爱做的事,就是把一个东西用在不该用的地方. 那么,可以把node用在桌面开发上吗. 把Javascript用在桌面开发上,早有先例,比如GTK+的gjs,还有Qt的QML(顺带一提,QML代表着桌面开发的另一个方向,a promising way),GNOME3中,也用javascript作为桌面插件的开发语言.