回覆列表
  • 1 # 千鋒長沙

    第一步當然是購買雲伺服器了,然後就是搭建環境安裝node

    在安裝node之前,被迫安裝了一個360瀏覽器(伺服器上的IE實在是受不了),然後去nodejs官網下載對應的版本。

    下載node-8.1.2 32 位 版本安裝失敗,提示此版本只支援win7以及window server 2008 R2以上本伺服器剛好比R2低下載6.11.0也是提示相同的內容下載4.4.4 版本安裝成功

    PS: 下載的都是.msi

    安裝mongodb

    伺服器版本為windows server 2008與windows server 2008 R2的區別在於一個是基區windows vista 而R8基於windows7

    所以在選擇mongodb安裝包時,選擇windows vista版本(只有32位)

    安裝的版本為: mongodb-win32-i386-3.2.16-signed

    安裝完畢之後 在monodb安裝目錄下的bin檔案下 執行cmd

    此處的檔案路徑是你要做為啟動的資料庫的儲存路徑(需提前建立)

    報錯:

    表示32bit版本的mongodb預設不開journal記錄,如果你需要的話,需要在執行時加上--journal開關

    於是重新輸入cmd命令:

    報另一個錯:

    wiredTiger 儲存啟動引擎在32位上不被支援,需要將儲存啟動引擎設定為mmapv1或者將你的系統升級為64位

    於是輸入命令

    程式成功執行,在瀏覽器輸入localhost:27017顯示如下欄位:

    配置nginx

    將自己之前做得一個nodejs+angular的專案copy到伺服器上嘗試執行,沒想到直接成功了。原本以為node專案能跑起來就萬事大吉,然而還是太年輕。跑起來只能透過localhost訪問,輸入公網IP一點卵用的沒有,於是去查了一下node http模組的文件,發現:於是改了改打碼:

    prot = "你想要的埠",host = "你對應的公網IP";

    結果執行時報錯:

    EADDRNOTAVAIL 表示 error address not available地址無法獲取將host改為本伺服器的ip地址之後,能成功開啟。

    於是得出一個結論:需要透過一種手段來使專案支援公網IP訪問,這種手段————就是ngxin反向代理

    隨便去下載一個ngxin,然後在ngxin/conf資料夾下新建一個node.conf。

    然後在同級目錄下的nginx.conf中include。

    node專案還是在localhost上執行,mongodb也開啟,在使用localhost:3000能訪問專案的情況下,雙擊執行ngxin或者在ngxin目錄下開啟cmd執行nginx.exe。

    然後使用公網IP訪問,非常完美。(就是網速有點慢,還偶爾會重定向,可能是ngxin配置有問題);

    三、搞一個域名

    在萬網上隨便買了一個域名,online字尾,很便宜 7塊錢能用一年呢。然後配置一下域名解析,這一步也很完美。

    但是!過幾天再去訪問的的域名返現無法訪問了。

    查了下原因是因為我沒有備案(我去還要備案。。。);然後照著教程準備備案了,結果輸入域名時提示域名字尾無法提交備案。才發現又踩了一個坑 online字尾不支援備案....不能備案又不能用,還不能轉賣,這個域名買了有毛用啊。

  • 中秋節和大豐收的關聯?
  • 亨得利換了球杆後為什麼成績急劇下降?