CentOS7系統中node安裝配置

導語:本篇講解如何配置node開發環境,讓你的node代碼能夠正常的在網頁中運行。

準備工做

  • linux centos7操做系統
  • ssh軟件
  • nginx

node資源

想要了解更多關於node的內容,請訪問:css

nodejs官網node

安裝node

本次安裝介紹兩個版本的安裝方法,一個是源碼安裝,另外一個是已編譯版本安裝,linux

  • 源碼安裝
  • 已編譯版本安裝

源碼安裝

  • 第一步,到官網查看最新源碼,並下載
cd /home/downloads
wget https://nodejs.org/dist/v10.16.0/node-v10.16.0.tar.gz
  • 第二步,解壓源碼
tar xzvf node-v10.16.0.tar.gz
cd node-v10.16.0
  • 第三步,安裝編譯軟件
sudo yum install gcc gcc-c++
  • 第四步,編譯安裝
./configure
make
sudo make install

大概須要半個小時時間,編譯完成查看版本號。nginx

node --version

若是有顯示版本號,說明安裝成功。c++

已編譯版本安裝

  • 下載已編譯版本
cd /home/downloads
wget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz
  • 解壓
tar -xvf node-v10.16.0-linux-x64.tar.xz
mv node-v10.16.0-linux-x64  /home/soft/node10
  • 創建軟鏈接

這樣就能夠全局使用了。npm

ln -s /home/soft/node10/bin/npm /usr/local/bin/
ln -s /home/soft/node10/bin/node /usr/local/bin/
  • 查看版本
node -v
npm -v

自動化node

  • 安裝pm2管理軟件
npm install pm2 -g
  • 全局配置
ln -s /home/soft/node10/bin/pm2 /usr/local/bin/pm2
  • pm2經常使用命令

啓動:pm2 start app_name|app_id
中止:pm2 stop app_name|app_id
刪除:pm2 delete app_name|app_id
重啓:pm2 restart app_name|app_id
中止全部:pm2 stop all
查看全部的進程:pm2 list
查看全部的進程狀態:pm2 status
查看某一個進程的信息:pm2 describe app_name|app_idcentos

nginx配置node環境

  • 新建nginx配置文件,輸入如下內容。
vi /etc/nginx/vhost/node.conf

在裏面輸入:api

server {  
  listen   80;  # 監聽端口
  server_name  node.example.org; # 訪問域名  
  access_log  /var/www/node/access.log; # 成功日誌
  error_log  /var/www/node/error.log; # 錯誤日誌
  location / {
    proxy_pass http://127.0.0.1:3000;
  }
  # 靜態文件圖片規則
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
    expires  30d;
  }
  # 靜態文件js、css規則
  location ~ .*\.(js|css)?$ {
    expires  1h;
  }
}
  • 打開3000端口。
firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload

配置完了之後重載重啓nginx。服務器

systemctl reload nginx
systemctl restart nginx

而後建立一個node文件,訪問地址,即可以看到輸出結果。app

  • 建立目錄:mkdir /var/www/node
  • 建立文件: vi /var/www/node/app.js
  • 輸入如下內容:
// 保存爲app.js文件
// 引入http模塊
const http = require('http');
const port = 3000;

const success = {
    msg: "get_succ",
    code: 201,
    data: {
        list: [
            {"id":1,"name": "alun"},
            {"id":2,"name": "mark"},
            {"id":3,"name": "jean"}
        ]
    }
}

const error = {
    msg: "get_fail",
    code: 101,
    data: {
        info: 'this request failed,again try!'
    }
}

const authy = {
    msg: "no visited!",
    code: 403,
    data: {
        info: 'not visited!'
    }
}

// 創建http服務
const serve = http.createServer((req,res) => {
    var lawDomainList = "http://localhost:9925";
    res.setHeader('Content-Type', 'text/plain;charset=utf8');
    res.setHeader("Access-Control-Allow-Origin",lawDomainList);
    if (req.url == '/api') {
        res.end(JSON.stringify(success));
    } else {
        res.end(JSON.stringify(error));
    }
    res.end(authy);
})
// 監聽端口
serve.listen(port,function(){
    console.log('serve is running on port 3000!');
})

啓動node程序,pm2 start app.js

預覽

在本地hosts文件增長解析記錄,這裏的ip就是你遠程服務器的ip地址了。

192.168.1.123 node.example.org

打開遊覽器,輸入http://node.example.org 就能夠看到以前編輯的站點的node文件內容了。

原文內容:https://guanqi.xyz/note/cento...

相關文章
相關標籤/搜索