linux环境下nginx 来部署nodejs web项目
1、1.如果你是在windows环境的话,可以先安装virtual Box, 然后在virtual box里面安装一台ubuntu 的虚拟机。
2、2. 启动ubuntu虚拟机,然后通过 apt-get install nginx-core安装好nginx
3、3. 安装好nodejs ,node -v
4、4. 下面就进入ngInx的 配置文件的编写了。我们再 /etc/nginx/conf.d下面创建一个 test.conf的文件
server {
listen 80;
client_max_body_size 30M;
location = / {
index index.html;
root /data/www/test/webroot;
}
location ~* \.html {
root /data/www/test/webroot;
}
location ~* \.(ttf|woff|gif|jpg|png|js|css)$ {
root /data/www/test/webroot;
}
location / {
proxy_pass http://127.0.0.1:4000;
}
error_log /var/log/nginx/test.log info;
5、重启nginx
我们通过浏览器访问本地的 80端口,就可以看到我们的网站了。
静态文件html, css, javascript图片等 nginx会直接发送给浏览器。
匹配不到的一些路径(比如前端页面调用的接口数据), 我们通过
proxy_pass http://127.0.0.1:4000;
这个配置项就把接口请求转发给我们后端的nodejs了。接下来我们把后端的接口启动在4000端口上。
6、比如,我们用nodejs随便写一个简单的web后端的接口, 创建一个app.js的文件, 内容为:
var express = require('express');
var app = express();
app.get('/login', function (req, res) {
res.send('hello world');
})
var server = app.listen(4000, function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
})
然后启动:执行命令 node app.js
7、最后打开浏览器,就可以访问到我们的网站了。
8、访问一个后端的接口网站,可以发现nginx也把请求转发到 nodejs 的4000端口上了。