基于Debian系统配置Nginx环境的Node.js应用教程
Node.js,是当前比较流行的能够动态的快速响应内容的JavaScript框架,在有些环境下比我们使用的PHP应用都能够提高效率。目 前,Node.js可以与我们常用的Nginx、Apache等服务器应用程序使用,在这篇文章中,麦子将分享我们在debian系统中,基于Nginx 环境的配置处理前端、静态文件,然后用Node.js配置处理后端文件请求。
第一、安装和配置Nginx
1、安装nginx
apt-get install nginx
2、启动Nginx
service nginx start
3、改变工作目录
cd /etc/nginx/sites-available/
4、创建一个新的站点文件
/etc/nginx/sites-available/yd631.com
然后添加下面的脚本
#Names a server and declares the listening port
server {
listen 80;
server_name yd631.com www.yd631.com;#Configures the publicly served root directory
#Configures the index file to be served
root /var/www/yd631.com;
index index.html index.htm;#These lines create a bypass for certain pathnames
#www.yd631.com/test.js is now routed to port 3000
#instead of port 80
location /test.js {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
}
}
5、更改工作目录
cd /etc/nginx/sites-enabled/
6、创建软连接
ln -s /etc/nginx/sites-available/yd631.com
7、删除默认信息
rm default
8、重新启动和载入Nginx
service nginx reload
第二、创建站点目录和文件
到目前为止,我们的Nginx环境已经创建完毕,我们可以将设置的域名绑定指向到当前VPS的IP地址。然后我们需要进行创建目录和文件 调试。
1、创建目录
mkdir -p /var/www/yd631.com
2、创建工作文档
cd /var/www/yd631.com
3、创建一个调试HTML文件
/var/www/yd631.com/index.html
输入下面内容
<!DOCTYPE html>
<html>
<body>
<br>
<br>
<center>
<p>
</p>
</center>
<center>
<p>
The button links to test.js. The test.js request is passed through NGINX and then handled by the Node.js server.
</p>
</center>
<center>
<a href="test.js">
<button type="button">Go to test.js</button>
</a>
</center>
</body>
</html>
保存后退出当前文件。
第三、安装Node.js和写入设置
1、安装最新版本的Node.js
curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
2、安装
nvm install 0.10
3、设置配置文件
/var/www/yd631.com/server.js
输入下面内容
//nodejs.org/api for API docs
//Node.js web server
var http = require("http"), //Import Node.js modules
url = require("url"),
path = require("path"),
fs = require("fs");http.createServer(function(request, response) { //Create server
var name = url.parse(request.url).pathname; //Parse URL
var filename = path.join(process.cwd(), name); //Create filename
fs.readFile(filename, "binary", function(err, file) { //Read file
if(err) { //Tracking Errors
response.writeHead(500, {"Content-Type": "text/plain"});
response.write(err + "\n");
response.end();
return;
}
response.writeHead(200); //Header request response
response.write(file, "binary"); //Sends body response
response.end(); //Signals to server that
}); //header and body sent
}).listen(3000); //Listening port
console.log("Server is listening on port 3000.") //Terminal output
3、打开一个新窗口运行环境
screen
4、执行
node server.js
执行脚本。
第四、创建测试文件Test.js
/var/www/yd631.com/test.js
输入下面内容
<!DOCTYPE html>
<html>
<body><center>
<h2>
Your Node.JS server is working.
</h2>
</center>
<center>
<p>
The below button is technically dynamic. You are now using Javascript on both the client-side and the server-side.
</p>
</center>
<br>
<center>
<button type="button"
onclick="document.getElementById('sample').innerHTML = Date()">
Display the date and time.
</button>
<p id="sample"></p>
</center>
</body>
</html>
这个时候,我们可以打开域名或者IP地址,测试文件。test.js按钮来测试Node.js的服务器提供文件服务。在测试页面中,我们可以看到当前返回的服务器时间。
最后,这样当前的NGINX和NODE.JS已经可以同时运行,如果我们有项目需要的时候,试试是否比PHP执行效率高。反正麦子看到不少的项目和开发已经都在用NODE.JS做后端开发。
基于Debian系统配置Nginx环境的Node.js应用教程的更多相关文章
- win 环境下 node.js环境变量
在win 环境下 node.js环境变量有两种情况: (1)开发环境(development):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告. ...
- Vue框架下的node.js安装教程
Vue框架下的node.js安装教程 python服务器.php ->aphche.java ->tomcat. iis -->它是一个可以运行JAVASCRIPTR 的运行环 ...
- 《Node.js核心技术教程》学习笔记
<Node.js核心技术教程>TOC \o "1-3" \h \z \u 1.章模块化编程 2019.2.19 13:30' PAGEREF _101 \h 1 08D ...
- Node.Js安装教程
Node.Js安装教程 介绍下我的环境 环境 值 操作系统 win10 64bit Node.Js 8.9.4 emmmm 表格中毒了,为什么出不来效果 一.下载及安装 这个可以去Node.Js官网上 ...
- 24个很赞的 Node.js 免费教程和在线指南
JavaScript 最初是用来创建动态网站效果的的前端语言.而如今,这门脚本语言也可以用作后端开发,用于搭建 Web 服务器,开发接口,甚至创建博客.在下面这个列表中包括24个 Node.js 教程 ...
- 【入门必备】最佳的 Node.js 学习教程和资料书籍
Web 开发人员对 Node.js 的关注日益增多,更多的公司和开发者开始尝试使用 Node.js 来实现一些对实时性要求高,I/O密集型的业务.这篇文章中,我们整理了一批优秀的资源,你可以得到所有你 ...
- 【特别推荐】Node.js 入门教程和学习资源汇总
这篇文章与大家分享一批很有用的 Node.js 入门教程和学习资源.Node 是一个服务器端的 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...
- Node.js 入门教程和学习资源汇总
这篇文章与大家分享一批很有用的 Node.js 入门教程和学习资源.Node 是一个服务器端的 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...
- Node.js模块化教程
Node.js模块化教程 下载安装node.js 创建项目结构 |-modules |-module1.js |-module2.js |-module3.js|-app.js|-package.js ...
随机推荐
- Hadoop学习之Ubuntu12.04 Hadoop 环境搭建笔记
SSH无密码配置 Hadoop在Ubuntu12.04上搭建环境 报错及问题 SSH无密码配置 参考:Linux(Centos)配置OpenSSH无密码登陆 注意问题: Hadoop集成环境三台机器都 ...
- 【BJG吐槽汇】第2期 - 我每周1-2次迟到都是因为你-->ios10!
本期槽点嘉宾:苹果系统 ios10 小吐我记得iphone是在2008年出的,当时我还在用诺基亚N70,对iphone是十分的陌生,想必大家也是,直到iphone4的时候,黄牛成群,饥饿营销,包括出i ...
- 用备份控制文件做不完全恢复下的完全恢复(全备<老>--备份控制文件<次新>--删除表空间andy--日志文件<新>)
为什么会使用备份的控制文件? 实际工作中主要有两种情况:第一种:当前控制文件全部损坏,而数据文件备份,控制文件备份及当前日志处于不同SCN版本,它们之间又增加过表空间(数据文件).第二种:当前控制文件 ...
- JavaEE XML StAX创建
StAX创建XML文档 @author ixenos 1. 如果通过DOM树来创建XML文件时,发现这个DOM树没有其他用途,那么这种方式就不是很高效,这时我们可以使用StAX API直接将XML树写 ...
- js分页模板
/** *参数说明: *currentPage:当前页数 *countPage:总页数 *changeMethod:执行java后台代码的js函数,即是改变分页数据的js函数 */ function ...
- GNU/Linux下Freeplane的界面渲染问题
如下图所示,思维导图软件Freeplane在GNU/Linux下默认的界面渲染效果是很差的,即便将Preferences → Appearance → Antialias设置为Antialias al ...
- php7.0 和 php7.1新特性
PHP7.1 新特性 1.可为空(Nullable)类型 类型现在允许为空,当启用这个特性时,传入的参数或者函数返回的结果要么是给定的类型,要么是 null .可以通过在类型前面加上一个问号来使之成为 ...
- cdh 安装记录
安装文件准备 CDH 下载地址:http://archive.cloudera.com/cdh5/parcels/latest/ 下载操作系统对应的版本: 1.CDH-5.3.0-1.cdh5.3.0 ...
- Java中集合框架体系
集合的体系结构: |--Collection(单列集合的根接口) |--List(子接口):元素是有序的,元素可以重复.因为该集合体系有索引. |--A ...
- 百度移动搜索自动转码太坑爹,JS跳转地址会被抓取
这段时间碰到个很崩溃的问题,一个页面通过 script 加载请求服务端进行统计再输出js进行跳转,分为两个步骤分别统计, 打开页面通过script 请求远程服务器进行统计并输出要通过js使页面跳转的最 ...