nginx可以使用代理访问后端的Node.js应用服务器。
配置方法:
1)在配置文件http段内容添加后端服务器:
http {
#添加后端服务器,和nginx负载均衡配置一样
upstream nodejs {
server 127.0.0.1:8080
}
...
}
2)给应用添加虚拟主机:
server {
listen 80
server_nameIP
location / {
proxy_pass nodejs#名字和前面的对应,将所有的请求转发给后端的node
}
access_log logs/nodejs.access.log main#如果需要日志的话
}
推荐将静态文件如css、js和图片和应用服务器分开。
先确认下系统环境合不合要求Python -V(确认python版本大于2.6)
访问http://nodejs.org/download/下载需要的Node.js版本(wget
http://nodejs.org/dist/v0.10.26/node-v0.10.29.tar.gz )
解压 tar zxvf node-v0.10.26-linux-x64.tar.gz
进入目录 cd node-v0.10.26-linux-x64
./configure --prefix=/home/work/setups/node-v0.10.26
make
sudo make install
添加到系统环境 echo "export PATH=$PATH:/home/work/setups/node-v0.10.26/bin">>
~/.bash_profile
. ~/.bash_profile执行该文件更新$PATH变量
###安装Express
sudo npm install express
-gd g参数:把express安装到NodeJS的lib目录d参数:同时安装依赖模块包
sudo npm install forever -gd
(异常情况:
如果遇到npm 找不到的情况 确认sudo node -v是否找不到 找不到的话:需要added /usr/local/bin to secure_path in /etc/sudoers :
sudo visudo
把 Defaultssecure_path =
/sbin:/bin:/usr/sbin:/usr/bin 这行 改为 Defaultssecure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin然后:x保存退出
如果遇到
npm ERR! Error: Hostname/IP doesn't match certificate's altnames
执行 npm config set strict-ssl false
如果遇到 npm ERR! registry error parsing json
npm cache clean
执行npm config set registry http://registry.npmjs.eu/
)
###部署forever
$ npm install -g forever
启动
NODE_ENV=pro LANG='zh' /usr/local/bin/foreverstart-o
/home/work/log/node_out.log-e /home/work/log/node_err.log /home/work/webroot/index.js
NODE_ENV=pro环境变量 pro为生产环境(程序中可以指定)
LANG环境变量 指定默认语言
node_out.log输出日志 注意路径别抄成我的了
node_err.log错误日志
index.js 启动文件
在Ajax应用程序中,XmlHttpRequest对象负责将用户信息以异步通信地发送到服务器端,并接收服务器返回的响应信息和数据。XMLHttpRequest简介
XMLHttpRequest可以提供不重新加载页面的情况下更新网页,在页面加载后在客户端向服务器请求数据,在页面加载后在服务器端接受数据,在后台向客户端发送数据。XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。XMLHttpRequest 可以同步或异步返回 Web 服务器的响应,并且能以文本或者一个 DOM 文档形式返回内容。尽管名为 XMLHttpRequest,它并不限于和 XML 文档一起使用:它可以接收任何形式的文本文档。XMLHttpRequest 对象是名为 AJAX 的 Web 应用程序架构的一项关键功能。
XMLHttpRequest和Javascript
Javascript本身并未具备向服务器发送请求的能力,要么使用window.open()方法重新打开一个页面向服务器提交请求,要么使用XMLHttpRequest对象发送请求。不同的是,前者是普通的即同步交互模式,而后者是异步交互方式。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)