第一步當然是購買雲伺服器了,然後就是搭建環境安裝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字尾不支援備案....不能備案又不能用,還不能轉賣,這個域名買了有毛用啊。
第一步當然是購買雲伺服器了,然後就是搭建環境安裝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字尾不支援備案....不能備案又不能用,還不能轉賣,這個域名買了有毛用啊。