在CentOS上部署Node.js RESTful API涉及幾個步驟,包括安裝Node.js、設置環境、部署代碼和配置Nginx(或其他Web服務器)。以下是一個詳細的步驟指南:
首先,你需要在CentOS上安裝Node.js。你可以使用NodeSource的二進制分發庫來安裝特定版本的Node.js。
# 添加NodeSource庫
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
# 安裝Node.js和npm
sudo yum install -y nodejs
確保你的Node.js和npm版本是最新的。
# 更新Node.js和npm
sudo yum update nodejs npm
假設你已經有一個Node.js RESTful API項目,并且你的代碼已經托管在Git倉庫中。
# 克隆你的項目代碼
git clone https://github.com/your-repo/your-api-project.git
cd your-api-project
# 安裝項目依賴
npm install
Nginx將作為反向代理服務器來處理HTTP請求并將它們轉發到你的Node.js應用程序。
# 安裝Nginx
sudo yum install -y nginx
編輯Nginx配置文件以設置反向代理。
# 編輯Nginx配置文件
sudo vi /etc/nginx/nginx.conf
在server
塊中添加以下內容:
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:3000; # 假設你的Node.js應用運行在3000端口
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
# 啟動Nginx
sudo systemctl start nginx
# 設置Nginx開機自啟動
sudo systemctl enable nginx
你可以使用pm2
來管理你的Node.js應用程序,確保它在后臺運行并且自動重啟。
# 安裝pm2
sudo npm install -g pm2
# 使用pm2啟動你的Node.js應用程序
pm2 start app.js --name your-api-app
# 設置pm2開機自啟動
pm2 startup
pm2 save
確保你的防火墻允許HTTP和HTTPS流量。
# 允許HTTP和HTTPS流量
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
打開瀏覽器并訪問你的域名(例如 http://yourdomain.com
),你應該能夠看到你的Node.js RESTful API的響應。
通過以上步驟,你已經成功在CentOS上部署了一個Node.js RESTful API。