引言
rap2 使用了前后端分離的架構。
后端源碼地址:rap2-delos 基於Koa + MySQL
前端源碼地址:rap2-dolores 基於React
首先下載源碼,通過git或者直接根目錄下載解壓都可以,自行解決下載速度慢的問題。
安裝需要的環境
Node.js 8.9.4+ 安裝最新windows版
MySQL 5.7+ 不要用最新版,會有問題,踩坑過
Redis 4.0+ 這個實測3.2也沒問題 ,window版下載地址
提供默認端口無密碼的redis服務。
安裝后端站點
創建數據庫
在全局安裝pm2 和 typescript
配置mysql,redis 數據庫鏈接配置
在/src/config/config.xxx.js 中可以找到相應配置,根據實際情況填寫。
初始化
執行
可能會出現差一些包 ,根據包名,都可以使用 npm install xxxx 來安裝。
編譯
初始化數據庫表,填充基礎數據
執行mocha測試用例和js代碼規范檢查
啟動服務
啟動服務之前檢查下8080端口是否被占用,當然也可以在/src/config/config.xxx.js 修改端口
(iis上有iisnode 可以讓iis托管node程序,但是沒有成功配置出來 ,所以目前還是用的pm2 來承載運行這個程序)
方法2: 通過nssm 執行發布后dist目錄的 node dispatch.js ,安裝成windows服務也可以 ( 2018.07.20補充)
安裝前端站點
這是一個純靜態的站點,只需要先打包出來,然后掛在iis上就行。
初始化
在下載源碼包的根目錄執行
配置前端站點所使用的服務端端地址
可以在/src/config/config.prod.js(生產模式配置文件) 中找到
打包程序
在下載源碼包的根目錄執行
執行成功的話,將會在根目錄生成一個build文件夾,這個里面就是發布好的站點文件。
部署站點
使用iis
使用build文件夾 新建一個站點。需要,這個時候已經可以看到效果了, 但是當用戶在非根目錄刷新頁面就會出現404頁面。
這里需要特殊處理下:
方法1: 在iis上配置,選中站點 -》功能視圖下的 錯誤頁 -》編輯404狀態碼-》改成在此網站上執行\index.html 。
方法2: 使用urlrewrite 功能, 將所有請求都重寫到\index.html。
使用server命令
安裝server命令 npm install -g server
運行 : serve -s ./build -p 80
這也是官方給出的方案
結語
安裝過程中也不是一帆風順,大多出現在執行 npm命令 ,基本都是缺少包 或者命令 ,然后使用 npm install xxxx 安裝就好 。