从零搭建 Node.js 线上环境

本文首发 dawei.lv

本文对应 Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-117-generic x86_64)

Step 1 更新 Ubuntu 源资源列表

apt-get update
复制代码

Step 2 安装 Node.js 版本管理工具 nvm

我们使用 nvm 作为 Node.js 的版本管理工具,它可以方便的切换 Node.js 版本。

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
复制代码

看到提示

=> Downloading nvm as script to '/root/.nvm'

=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
复制代码

重新登录 Ubuntu。

nvm --version
# 显示版本号,证明安装 nvm 已经成功
0.33.11
复制代码

Step 3 安装 Node.js

# 列出长期支持的版本
nvm ls-remote --lts

# 选择安装最新的长期支持版本
nvm install v8.11.3

# 耐心等待下载,从阿里云上下载的时候速度还是挺慢的
Downloading and installing node v8.11.3...
Downloading https://nodejs.org/dist/v8.11.3/node-v8.11.3-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v8.11.3 (npm v5.6.0)
Creating default alias: default -> v8.11.3
复制代码

Step 4 安装 nginx

apt-get install nginx
复制代码

nginx 默认会被安装在 /etc/nginx 下。安装好之后启动 nginx,访问服务器的 ip,就会看到 nginx 的欢迎页面。

# 启动
service nginx start
# 停止
service nginx stop
# 重启
service nginx restart
# 重新加载配置
service nginx reload
复制代码

Step 5 为不同 Node.js 服务配置不同域名

假设我们需要配置 www.example.com 指向服务器上的 http://127.0.0.1:8888dev.example.com 指向服务器上的 http://127.0.0.1:8800

nginx 的默认安装目录是 /etc/nginx ,我们需要在 /etc/nginx/conf.d 下新建两个文件 www.example.com.confdev.example.com.conf

www.example.com.conf 内容:

server {
    listen 80;
    server_name www.example.com;
    access_log /var/log/nginx/www.example.com.access.log;
    location / {
        proxy_pass    http://127.0.0.1:8888/;
    }
}
复制代码

dev.example.com.conf 内容:

server {
    listen 80;
    server_name dev.example.com;
    access_log /var/log/nginx/dev.example.com.access.log;
    location / {
        proxy_pass   http://127.0.0.1:8888/;
    }
}
复制代码
# test 下配置有没有问题
nginx -t
复制代码
# 重新加载配置
service nginx reload
复制代码

分别访问下 www 站和 dev 站,看看是不是已经配置好啦!

413 Request Entity Too Large 报错解决方式: 在 nginx.conf 的 http {} 中添加一个 client_max_body_size 50m; 将上传限制为 50M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值