Fork me on GitHub

腾讯云+nginx部署nodejs应用(三)

最简单最基础的nginx部署nodejs应用,适合应用部署的新手

前一篇文章讲到了crp持续交付,现在讲如何配置nginx,使用自己的域名访问应用。本来应该接下去讲todos项目的,但是由于这是之前自己练习的时候整理的博客,原理是一样的,所以大家也可以看,只需改改名字啥的就好了,或者先用helloworld走一遍,由简入繁也是不错的。大家加油~~

常用命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 启动nginx
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
# 重启nginx服务
sudo /usr/local/nginx/sbin/nginx -s reload
# 如果报错:
nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)
# 查看nginx进程
ps -ef | grep nginx
# 关闭nginx进程
sudo kill 进程号

hello world

写一个helloworld文件

1
2
3
4
5
6
7
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('hello world\n');
}).listen(3000);
console.log('Server running at http://127.0.0.1:3000/');

提交代码到aliyun.code.com上新建的仓库,然后创建工作流什么的,具体可以看前一篇。一切部署好之后请看下文。

配置nginx

  1. 进入 /usr/local/nginx/conf 目录,在该目录下创建include 文件下,各个应用的配置文件就写在这个文件夹里面

  2. 进入 /usr/local/nginx/conf/include 目录,创建 nginx.node.conf 文件,在里面输入如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
upstream nodejs {
server 127.0.0.1:3000;
keepalive 64;
}
server {
listen 80;
# 该域名需要解析到你的云服务器ip
server_name todos.suzper.com;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Connection "";
proxy_pass http://nodejs;
}
}
  1. 进入/usr/local/nginx/conf ,打开nginx.conf, 在http 里面添加 include /usr/local/nginx/conf/include/*

  2. 重启nginx

  3. 访问hello.suzper.com,就可以看到hello world.

总结

从简入繁,先学会走在学会跑,之前一直没搞懂如何部署nodejs项目到云主机,主要是没有从最简单的helloworld做起,现在成功实现了helloworld级的部署,后面会继续深入和学习。

问题

不明白为啥bundle这么大。。。还需要研究

gzip on;

gzip_min_length 1k;

gzip_buffers 16 64k;

gzip_http_version 1.1;

gzip_comp_level 6;

gzip_types text/plain application/javascript text/css application/xml;

gzip_vary on;

-------------本文结束感谢您的阅读-------------
如果您觉得受益了,欢迎打赏鼓励。