本文首發 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:8888
, dev.example.com
指向伺服器上的 http://127.0.0.1:8800
。
nginx 的預設安裝目錄是 /etc/nginx ,我們需要在 /etc/nginx/conf.d 下新建兩個檔案 www.example.com.conf
、dev.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