在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 相关文章推荐
Javascript----文件操作
Jan 18 Javascript
动态载入/删除/更新外部 JavaScript/Css 文件的代码
Jul 03 Javascript
jQuery ajax全局函数处理session过期后的ajax跳转问题
Jun 03 Javascript
vue-router路由参数刷新消失的问题解决方法
Jun 17 Javascript
VUE重点问题总结
Mar 19 Javascript
在iFrame子页面里实现模态框的方法
Aug 17 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
Dec 10 Javascript
vue中typescript装饰器的使用方法超实用教程
Jun 17 Javascript
微信小程序 Storage更新详解
Jul 16 Javascript
Vue2.0实现简单分页及跳转效果
Jul 29 Javascript
Vue快速实现通用表单验证的示例代码
Jan 09 Javascript
js实现从右往左匀速显示图片(无缝轮播)
Jun 29 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
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
php计算指定目录下文件占用空间的方法
2015/03/13 PHP
php 无限级分类 获取顶级分类ID
2016/03/13 PHP
CI框架AR操作(数组形式)实现插入多条sql数据的方法
2016/05/18 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
2016/06/13 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
2018/04/21 PHP
PHP登录验证功能示例【用户名、密码、验证码、数据库、已登陆验证、自动登录和注销登录等】
2019/02/25 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
js window.print实现打印特定控件或内容
2013/09/16 Javascript
PHP abstract与interface之间的区别
2013/11/11 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
2014/01/02 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
初识SmartJS - AOP三剑客
2014/06/08 Javascript
详解Javascript事件驱动编程
2016/01/03 Javascript
使用jQuery.form.js/springmvc框架实现文件上传功能
2016/05/12 Javascript
Angular ng-class详解及实例代码
2016/09/19 Javascript
AngularJs验证重复密码的方法(两种)
2016/11/25 Javascript
从零学习node.js之详解异步控制工具async(八)
2017/02/27 Javascript
xmlplus组件设计系列之图标(ICON)(1)
2017/05/05 Javascript
vue v-for 使用问题整理小结
2019/08/04 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
Python-opencv实现红绿两色识别操作
2020/06/04 Python
pycharm2020.1.2永久破解激活教程,实测有效
2020/10/29 Python
Python图像处理之膨胀与腐蚀的操作
2021/02/07 Python
西安众合通用.net笔试题
2013/03/18 面试题
面试必备的求职信
2014/05/25 职场文书
女生节标语
2014/06/26 职场文书
2014年学校党建工作总结
2014/11/11 职场文书
2015年端午节国旗下演讲稿
2015/03/19 职场文书
《珍珠鸟》教学反思
2016/02/16 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
关于HTML编码导致的乱码问题
2021/09/04 HTML / CSS
mysql下的max_allowed_packet参数设置详解
2022/02/12 MySQL