在Linux系统中搭建Node.js开发环境的简单步骤讲解


Posted in Javascript onJanuary 26, 2016

1. Linux安装node.js

ubuntu:

sudo apt-get install nodejs npm

centos:

yum install nodejs npm

更详细的安装参见:https://github.com/joyent/node/wiki/Installation
npm为类似PHP中Pear的包管理器

2. 开始使用node.js

用文本编辑器新建hello.js写入以下内容

console.log('hello world');

打开命令行输入

$ node hello.js

你会看到输出  

$ hello world

    console.log是最常用的输出指令

3. 建立HTTP服务器

理解node.js架构
像PHP的架构模型为:
    浏览器--》HTTP服务器(apache、nginx)--》PHP解释器

而在node.js应用中,node.js采用:
    浏览器--》node.js这种架构

创建HTTP服务器:新建一个app.js文件,内容如下:

var http = require('http');
http.createServer(function(req, res){
  res.writeHead(200,{'Content-Type': 'text/html'});
  res.write('</pre>
<h1>node.js</h1>
<pre>');
  res.end('
hello world
 
');
}).listen(3000);
console.log("http server is listening at port 3000.");

运行

$ node app.js

打开浏览器打开http://127.0.0.1:3000查看结果

该程序调用了node.js提供的http模块,对所有的Http请求答复同样的内容并监听3000端口。运行这个脚本后不会立刻退出,必须按下ctro+c才会停止,这是因为listen函数创建了事件监听器。

4. 调试脚本

node.js脚本修改后,必须停止原程序,重新运行,才能看到变化。
用包管理器安装supervisor工具。

$ npm install -g supervisor

以后通过

$ supervisor app.js

?碓诵?ode.js程序,它会检测程序代码变化,自动重启程序。
注意:安装时需要获得root权限。

Javascript 相关文章推荐
五段实用的js高级技巧
Dec 20 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
Feb 03 Javascript
js自执行函数的几种不同写法的比较
Aug 16 Javascript
jQuery ajax(复习)—Baidu ajax request分离版
Jan 24 Javascript
解读JavaScript中 For, While与递归的用法
May 07 Javascript
Javascript实现简单的富文本编辑器附演示
Jun 16 Javascript
js和jquery设置disabled属性为true使按钮失效
Aug 07 Javascript
深入理解setTimeout函数和setInterval函数
May 20 Javascript
浅谈JS封闭函数、闭包、内置对象
Jul 18 Javascript
vue实现重置表单信息为空的方法
Sep 29 Javascript
js中的深浅拷贝问题简析
May 10 Javascript
如何使用webpack打包一个库library的方法步骤
Dec 18 Javascript
基于JavaScript实现瀑布流布局(二)
Jan 26 #Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
Jan 26 #Javascript
JavaScript html5 canvas画布中删除一个块区域的方法
Jan 26 #Javascript
HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
Jan 26 #Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
Jan 26 #Javascript
JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例
Jan 26 #Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
Jan 26 #Javascript
You might like
77A一级收信机修理记
2021/03/02 无线电
destoon在360浏览器下出现用户被强行注销的解决方法
2014/06/26 PHP
PHP入门教程之面向对象基本概念实例分析
2016/09/11 PHP
php文件后缀不强制为.php的实操方法
2019/09/18 PHP
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
js获取location.href的参数实例代码
2013/08/02 Javascript
Enter转换为Tab的小例子(兼容IE,Firefox)
2013/11/14 Javascript
PHP守护进程实例
2015/03/06 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
基于nodejs实现微信支付功能
2017/12/20 NodeJs
解决vue项目使用font-awesome,build后路径的问题
2018/09/01 Javascript
vue实现一个炫酷的日历组件
2018/10/08 Javascript
vue router 通过路由来实现切换头部标题功能
2019/04/24 Javascript
浅谈vue 组件中的setInterval方法和window的不同
2020/07/30 Javascript
[01:33]真香警告!DOTA2勇士令状不朽珍藏Ⅱ饰品欣赏
2018/06/26 DOTA
用Python进行简单图像识别(验证码)
2018/01/19 Python
Tensorflow实现卷积神经网络用于人脸关键点识别
2018/03/05 Python
Pandas:DataFrame对象的基础操作方法
2018/06/07 Python
python 输入一个数n,求n个数求乘或求和的实例
2018/11/13 Python
python实现简易动态时钟
2018/11/19 Python
详解用python写一个抽奖程序
2019/05/10 Python
python+selenium select下拉选择框定位处理方法
2019/08/24 Python
python3 sorted 如何实现自定义排序标准
2020/03/12 Python
django列表筛选功能的实现代码
2020/03/27 Python
BeautifulSoup获取指定class样式的div的实现
2020/12/07 Python
白色公司:The White Company
2017/10/11 全球购物
自我评价个人范文
2013/12/16 职场文书
幼儿园毕业教师感言
2014/02/21 职场文书
个人售房合同协议书
2016/03/21 职场文书
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL
Python 中random 库的详细使用
2021/06/03 Python
Vue中foreach数组与js中遍历数组的写法说明
2021/06/05 Vue.js
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android
Java网络编程之UDP实现原理解析
2021/09/04 Java/Android
Vue中Object.assign清空数据报错的解决方案
2022/03/03 Vue.js
Java实现带图形界面的聊天程序
2022/06/10 Java/Android