1. 程式人生 > 程式設計 >雲伺服器部署Node.js專案的方法步驟(小白系列)

雲伺服器部署Node.js專案的方法步驟(小白系列)

以aliyun為例,選購伺服器建議選擇CentOS, 配置按照自己的需求選擇,付款成功後進入控制檯頁面,重置root密碼即可遠端登入伺服器。可在控制檯點選遠端登入,也可在安裝了ssh的主機上登入

# 檢視公網ip
# 以下為示例公網ip
ssh [email protected]

環境安裝

安裝node.js

# As root
curl -sL https://rpm.nodesource.com/setup_12.x | bash -

# No root privileges 
curl -sL https://rpm.nodesource.com/setup_12.x | sudo bash -

yum install -y nodejs

#如需編譯c++外掛
yum install gcc-c++ make
# or: yum groupinstall 'Development Tools'

檢查是否安裝成功

~$ node -v
v12.16.1
~$ npm -v
6.13.0

設定淘寶npm的淘寶映象

npm config set registry "https://registry.npm.taobao.org

全域性安裝pm2

npm install pm2 -g

安裝nginx

Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,在BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,事實上nginx的併發能力在同類型的網頁伺服器中表現較好,中國大陸使用nginx網站使用者有:百度、京東、新浪、網易、騰訊、淘寶等。

下載nginx

# 首先需確認安裝以下軟體
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

cd /usr/local
mkdir nginx
cd nginx
#下載最新版nginx
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
# 拷貝到nginx資料夾
cp -r /usr/local/nginx/nginx-1.16.1/* /usr/local/nginx/
./configure
make
make install

修改config

cd conf
vi nginx.conf

#修改配置檔案
#省略其他不做修改篇配置

http {
  server_tokens off;
  include    mime.types;
  default_type application/octet-stream;
  #access_log logs/access.log main;
  sendfile    on;
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65;

  gzip on;
  
  # 修改此處 nginx會自動載入enabled-server下面所有的配置檔案
  include /usr/local/nginx/enabled-server/*;
  ...
}

有時候我們需要部署多個網站,所以一般新建以網站為名的配置檔案,如myblog.conf

vi default.conf
# 配置檔案
upstream nodepro {
  server 127.0.0.1:3000; #專案執行的埠號, 按實際修改
  keepalive 64;
}

server {
  listen 80; #要監聽的埠號
  server_name xxxx.com www.xxxx.com; # 伺服器名稱,ip地址或域名,可以寫多個,用空格隔開

  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://nodepro; # 這裡要和最上面upstream後的應用名一致,可以自定義
  }
}

檢測nginx配置是否成功

cd ..
./nginx -t
# 修改成功
nginx: the configuration file /www/server/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /www/server/nginx/conf/nginx.conf test is successful

啟動nginx伺服器

./nginx

伺服器域名備案

  1. aliyun官網購買域名並實名認證,通過稽核後可開始備案
  2. 官網有代備案系統, 點選備案專區,根據提示進行備案(3-15個工作日)
  3. 控制檯點選網路與安全 -> 安全組 -> 配置規則 -> 新增安全組規則
  4. 協議型別選擇要建立的規則,如mysql(3306),redis(6379),http(80/80),https(443),可自定義

域名解析

  1. 在域名服務中找到域名列表
  2. 點選解析
  3. 點選新增記錄,記錄型別預設選擇A,主機記錄可以新增頂級域名和二級域名。解析路線預設即可,記錄值新增伺服器的公網IP,

最後

在伺服器執行你的Nodejs專案

pm2 start app.js

此時即可在外網通過域名訪問網站了。此文為學習記錄,如有錯誤,歡迎指正!

到此這篇關於雲伺服器部署Node.js專案的方法步驟(小白系列)的文章就介紹到這了,更多相關雲伺服器部署Node.js內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!