1. 程式人生 > >nodejs 從部署到域名訪問

nodejs 從部署到域名訪問

ati 服務 install 負載 ddr 則無 配置 ade url

一、Node.js 安裝在Ubuntu上

  用如下代碼下載nodejs 8.x最新版並安裝,npm 也會隨著一起安裝

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

sudo apt-get install -y nodejs

安裝完成之後,查看Nodejs、npm的版本號

node --version
npm --version

如無錯誤,應該會輸出對應的版本號 如下圖: 

技術分享圖片

二、安裝pm2

  
PM2是node進程管理工具,可以利用它來簡化很多node應用管理的繁瑣任務,如性能監控、自動重啟、負載均衡等,而且使用非常簡單。

全局安裝命令

npm install -g pm2

pm2 啟動Node 命令:

pm2 start server.js  --name dev-api

啟動成功之後可以通過pm2 list 來查看所有進程列表

三、安裝Nginx 並實現反向代理

安裝Nginx

sudo apt-get install nginx

啟動Nginx

sudo /etc/init.d/nginx start

然後通過訪問http://localhost 應該就能看到

技術分享圖片

表示已安裝成功!

下一步,就是如何通過域名來訪問我們的Nodejs 程序

  我已將dev-api.xxx.com 這樣的二級域名 解析到我的服務器上(如不會解析的話,可以在阿裏雲上查看相關資料)

  1. 修改nginx的配置文件(此步驟非必須)
    cd /etc/nginx/
    vim nginx.conf

    技術分享圖片

   主要是修改 61 62 行代碼。主要是因為我把所有配置文件放到了sites-available 文件中,這個是看個人的,只要是放入對應文件夾,否則無法訪問。

2. 復制一個配置文件,也可以自己新建一個,如名字為dev-api.conf

cd sites-available/    
cp default dev-api.conf

內容為:

server {
         listen 80;
         server_name dev-api.xxx.com;   #域名
         location / {
             # First attempt to serve request as file, then
             # as directory, then fall back to displaying a 404.
             proxy_pass http://localhost:8080;   #端口號
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 
          }
}

配置完之後

重啟一下Nginx

/etc/init.d/nginx restart

如果多個nodejs 程序,只要在sites-available文件中,建立所需對應的配置文件即可。

修改一下server_name xxxx.com; 和監聽的端口號即可

 

nodejs 從部署到域名訪問