[关闭]
@Andream 2017-11-12T09:53:56.000000Z 字数 1167 阅读 744

Node.js搭建服务器

课程表开发日志


参考:
http://blog.csdn.net/xiongqiangwin1314/article/details/76451506
http://www.runoob.com/nodejs/nodejs-http-server.html

Hello world

  1. // 进入工作目录
  2. cd /data/demo
  3. // 创建server.js
  4. vim server.js

server.js内容如下:

  1. var http = require('http');
  2. http.createServer(function (request, response) {
  3. // 发送 HTTP 头部
  4. // HTTP 状态值: 200 : OK
  5. // 内容类型: text/plain
  6. response.writeHead(200, {'Content-Type': 'text/plain'});
  7. // 发送响应数据 "Hello World"
  8. response.end('Hello World\n');
  9. }).listen(8888);
  10. // 终端打印如下信息
  11. console.log('Server running at http://127.0.0.1:8888/');
  1. // 执行该程序
  2. node server.js
  3. // 当我们修改了源码要重新启动server.js,这时要先关闭node
  4. pkill node

之后注意要在阿里云的安全组配置里打开8888端口
然后访问120.78.222.28:8888,就能看到Hello world了

但是这里执行node server.js的时候会占用主线程,能不能让它在后台运行呢?

在后台运行server.js

借助forever
http://cnodejs.org/topic/5021c2cff767cc9a51e684e3

  1. npm install forever -g # 安装
  2. forever start server.js # 启动
  3. forever end server.js # 关闭
  4. # 启动程序,同时记录日志、输出、错误信息
  5. forever start server.js -l server.log -o out.log -e err.log

安装的时候可能网速过慢,可以使用淘宝的cnpm

更多forever用法 https://github.com/nodejitsu/forever

让server.js自启动

server.js运行起来之后,服务器就开始工作啦!
但每次服务器开机,都要运行一次forever start server.js,还是有点麻烦,能不能让他自启动呢?

在~/.bash_profile文件可以设置登录后要执行的命令

  1. vim ~/.bash_profile
  2. // 将服务器启动命令添加到后面
  3. forever start /data/demo/server.js -l server.log -o out.log -e err.log
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注