Nuxt SSR 阿里雲部署之nginx代理–詳解篇

bobo發表於2019-02-16

前言:由於很多小夥伴私信我,關於阿里雲部署NUXT 應用的問題,在這裡具體詳細的介紹一下
我的伺服器版本是CentOS7~

所需工具: Xftp5 Xshell5(有遠端倉庫的就不需要Xftp5 直接推到你的伺服器)
步驟: 1 安裝配置 nvm(node)2 mysql 3 配置 nginx(Tengine)4 pm2 啟動
一. 安裝配置nvm 安裝node: 點選地址

二. 安裝mysql:點選地址

 安裝完畢 設定密碼  source mysql.sql  匯入你的sql檔案

三. 配置nginx

1、 下載tengine包,將tengine-2.2.0.tar.gz下載到 /usr/soft目錄中。

2、 解壓tengine包到 /usr/src中:

    cd /usr/src
    cp /usr/soft/tengine-2.2.0.tar.gz ./
    tar -zxvf tengine-2.2.0.tar.gz
    rm -rf tengine-2.2.0.tar.gz
3、 安裝必須元件

     yum -y install gcc gcc-c++
  PCRE:
     cd /usr/src
     wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
     tar zxvf pcre-8.39.tar.gz
    ./configure --prefix=/usr/local/pcre-8.39
    make && make install
 OpenSSL:
    cd /usr/src
    wget www.openssl.org/source/open…
   tar zxvf openssl-1.0.2.tar.gz
   ./config --prefix=/usr/local/openssl-1.0.2
   make && make install
Zlib:
   cd /usr/src
   wget www.zlib.net/zlib-1.2.11…
   tar zxvf zlib-1.2.11.tar.gz
  ./configure --prefix=/usr/local/zlib-1.2.11
   make && make install

4、 設定軟連結和開機啟動服務

  ln -s /etc/init.d/nginx /usr/bin/nginx
 chmod 755 nginx
 chkconfig --add nginx
 chkconfig nginx on  

5、 nginx 配置檔案

worker_processes 1;
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
pid logs/nginx.pid;
events {
   use epoll;
   worker_connections 1024;
 }
http {
   include mime.types;
   default_type application/octet-stream;
  sendfile on;
  keepalive_timeout 65;
 #gzip on;
 include /usr/local/nginx/conf/conf_site/*.conf; // 單獨 include conf檔案

}

6、 include的conf配置

server{
   listen 80;
   location / {
     deny all;
    }
}

upstream maven_domain_com {

   server localhost:8000; // 自己的伺服器ip
}

server{

    listen 80;  // 監聽80埠
    server_name maven.domains.com; // 自己的二級域名
    location / {
       proxy_pass http://maven_domains_com/nexus/;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   } 
   location /nexus/ {
       proxy_pass http://maven_domain_com/nexus/;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   }
}
  1. 啟動nginx

cd /usr/local/nginx/

./nginx

四. 整理程式碼放到伺服器

開啟Xftp 左上角 新建 會話

然後開啟

選擇剛才新建的

連線成功 之後 進入伺服器的 root 賬戶的 根目錄 (下圖)

五 啟動專案

把你的專案直接拖拽到你想放置的目錄,

切換到專案

npm install 安裝包的依賴 (可能會出各種包相容問題)

如果出現包相容問題,把package.json 檔案的包的版本前 的^去掉

然後刪除 rm -f -r ./node_modules

清除 包快取 npm clear cache

然後安裝yarn npm install yarn -g

重新用yarn 安裝一次

yarn install

安裝pm2

yarn add pm2

先執行 npm run dev

然後執行 pm2 start bulid/main.js

執行 pm2 list # 顯示所有程式狀態

顯示online 就表示已經啟動

如果訪問不通 可以檢視下 pm2 logs

也可以執行 pm2 monit # 監視所有程式

現在 輸入你的域名進行訪問把~~~~

成功部署~~~

已經部署成功的開源專案 [點選連線][1]

另外推薦一個 node專案 壓力測試模組:autocannon

demo

相關文章