导语:本篇解说如何配置node开发环境,让你的node代码能够失常的在网页中运行。
筹备工作
- linux centos7操作系统
- ssh软件
- nginx
node资源
想要理解更多对于node的内容,请拜访:
nodejs官网
装置node
本次装置介绍两个版本的装置办法,一个是源码装置,另一个是已编译版本装置,
- 源码装置
- 已编译版本装置
源码装置
- 第一步,到官网查看最新源码,并下载
cd /home/downloadswget https://nodejs.org/dist/v10.16.0/node-v10.16.0.tar.gz
- 第二步,解压源码
tar xzvf node-v10.16.0.tar.gzcd node-v10.16.0
- 第三步,装置编译软件
sudo yum install gcc gcc-c++
- 第四步,编译装置
./configuremakesudo make install
大略须要半个小时工夫,编译实现查看版本号。
node --version
如果有显示版本号,阐明装置胜利。
已编译版本装置
- 下载已编译版本
cd /home/downloadswget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz
- 解压
tar -xvf node-v10.16.0-linux-x64.tar.xzmv node-v10.16.0-linux-x64 /home/soft/node10
- 建设软连贯
这样就能够全局应用了。
ln -s /home/soft/node10/bin/npm /usr/local/bin/ln -s /home/soft/node10/bin/node /usr/local/bin/
- 查看版本
node -vnpm -v
自动化node
- 装置pm2管理软件
npm install pm2 -g
- 全局配置
ln -s /home/soft/node10/bin/pm2 /usr/local/bin/pm2
- pm2常用命令
启动:pm2 start app_name|app_id
进行:pm2 stop app_name|app_id
删除:pm2 delete app_name|app_id
重启:pm2 restart app_name|app_id
进行所有:pm2 stop all
查看所有的过程:pm2 list
查看所有的过程状态:pm2 status
查看某一个过程的信息:pm2 describe app_name|app_id
nginx配置node环境
- 新建nginx配置文件,输出以下内容。
vi /etc/nginx/vhost/node.conf
在外面输出:
server { listen 80; # 监听端口 server_name node.example.org; # 拜访域名 access_log /var/www/node/access.log; # 胜利日志 error_log /var/www/node/error.log; # 谬误日志 location / { proxy_pass http://127.0.0.1:3000; } # 动态文件图片规定 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } # 动态文件js、css规定 location ~ .*\.(js|css)?$ { expires 1h; }}
- 关上
3000
端口。
firewall-cmd --add-port=3000/tcp --permanentfirewall-cmd --reload
配置完了当前重载重启nginx。
systemctl reload nginxsystemctl restart nginx
而后创立一个node文件,拜访地址,便能够看到输入后果。
- 创立目录:
mkdir /var/www/node
- 创立文件:
vi /var/www/node/app.js
- 输出以下内容:
// 保留为app.js文件// 引入http模块const http = require('http');const port = 3000;const success = { msg: "get_succ", code: 201, data: { list: [ {"id":1,"name": "alun"}, {"id":2,"name": "mark"}, {"id":3,"name": "jean"} ] }}const error = { msg: "get_fail", code: 101, data: { info: 'this request failed,again try!' }}const authy = { msg: "no visited!", code: 403, data: { info: 'not visited!' }}// 建设http服务const serve = http.createServer((req,res) => { var lawDomainList = "http://localhost:9925"; res.setHeader('Content-Type', 'text/plain;charset=utf8'); res.setHeader("Access-Control-Allow-Origin",lawDomainList); if (req.url == '/api') { res.end(JSON.stringify(success)); } else { res.end(JSON.stringify(error)); } res.end(authy);})// 监听端口serve.listen(port,function(){ console.log('serve is running on port 3000!');})
启动node程序,pm2 start app.js
。
预览
在本地hosts文件减少解析记录,这里的ip就是你近程服务器的ip地址了。
192.168.1.123 node.example.org
关上游览器,输出http://node.example.org
就能够看到之前编辑的站点的node文件内容了。
原文内容:https://guanqi.xyz/note/cento...