91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

全棧CMS系統服務端啟動的細節有哪些

發布時間:2021-10-13 14:02:09 來源:億速云 閱讀:120 作者:iii 欄目:web開發

這篇文章主要介紹“全棧CMS系統服務端啟動的細節有哪些”,在日常操作中,相信很多人在全棧CMS系統服務端啟動的細節有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”全棧CMS系統服務端啟動的細節有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

1.redis的安裝及redis服務器的啟動

我們可以去redis官網下載redis安裝程序,我主要介紹window和 linux系統下的安裝,如果你是其他系統,可以去官網查看相關資料。

1.window下安裝和啟動服務

下載地址:https://github.com/MSOpenTech/redis/releasesRedis 支持 32 位和 64  位。這個需要根據你系統平臺來選擇,下載壓縮包到 C 盤,解壓然后將文件夾重命名為 redis。(這里方便記憶)

全棧CMS系統服務端啟動的細節有哪些

打開一個cmd窗口使用 cd 命令切換目錄到 C:\redis下,然后運行:

redis-server.exe redis.windows.conf

輸入之后,如果顯示如下界面,說明啟動成功:

全棧CMS系統服務端啟動的細節有哪些

當然我們也可以把redis路徑添加到環境變量里,這樣就不用每次都在redis路徑下執行了腳本了。這樣啟動還沒有完,如果我們想測試redis是否可以執行,我們上面啟動的cmd窗口千萬不能關,否則我們跑node將會出現如下報錯:

全棧CMS系統服務端啟動的細節有哪些

好了,我們繼續,測試一下redis是否可用。首先我們新建一個cmd窗口,切換到 redis  目錄下運行:

redis-cli.exe -h 127.0.0.1 -p 6379

設置鍵值對:

set user xxx

則會出現如下結果:

全棧CMS系統服務端啟動的細節有哪些

這樣,redis啟動這塊就可以了。

2.linux下安裝啟動redis

下載地址:http://redis.io/download,建議下載最新穩定版本。

$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz $ tar xzf redis-2.8.17.tar.gz $ cd redis-2.8.17 $ make

make完后  redis-2.8.17目錄下會出現編譯后的redis服務程序redis-server,還有用于測試的客戶端程序redis-cli,兩個程序位于安裝目錄 src  目錄下,下面啟動redis服務:

$ cd src $ ./redis-server

然后下面使用redis-cli的方式和window類似,這里就不舉例子了,如果想詳細了解redis的配置和啟動,請認真研讀redis官方文檔。

2.node服務器的啟動以及開發環境和正式環境的配置

關于node的編譯和配置我在上一篇也簡單講了一下,這里我們具體介紹如何啟動項目和打包線上和發開環境代碼。首先我們看看package.json的執行代碼:

"scripts": {    "start": "export NODE_ENV=development && nodemon -w src --exec \"babel-node src\"",    "build": "babel src --out-dir dist",    "run-build": "node dist",    "test": "echo \"Error: no test specified\" && exit 1"  }

我們先看start,這里主要用來啟動我們開發環境的服務器,我們通過export  NODE_ENV=development來定義開發環境的環境變量,由于我采用的是mac電腦,所以可以用export來定義一個node環境變量;window下我們采用set  NODE_ENV=development來定義。我們用如下指令來啟動:

npm start // or yarn start

其次我們看看build命令,主要是打包輸出的命令,dist為輸出的目錄名,你也可以根據自己代碼風格來命名。我們執行如下來打包:

npm run build // or yarn build

run-build命令是我額外加的,主要是方便測試生產環境的代碼,即我們打包的后代碼。執行方式同上。關于如何使用環境變量,這里我們可以參考我項目中的config下的代碼:

const isDev = process.env.NODE_ENV === 'development';  //獲取本機ip地址 function getIPAdress() {    var interfaces = require('os').networkInterfaces();      for (var devName in interfaces) {            var iface = interfaces[devName];              for (var i = 0; i < iface.length; i++) {            var alias = iface[i];            if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {                return alias.address;            }        }      } }  const IP = getIPAdress(); const staticPath = isDev ? `http://${IP}:3000` : '線上地址';   module.exports = {    isDev,    staticPath }

我們可以使用process.env.NODE_ENV來拿到我們在package下定義的環境變量,然后進行不同的操作。以上代碼主要作用就是下其他業務代碼傳遞環境變量,并對靜態路徑根據不同環境使用不同的ip地址,方便前后端調試。

3.服務器接口的測試及使用postman來測試接口

當我們啟動好服務器后,我們可以利用ip去測試端口,由于我們初始化時會初始化config和admin數據,所以我們可以使用postman來測試接口可靠性,為了方便理解,我會剖出初始化代碼,如果有不理解的,可以可和交流。

// server/src/db/schema/config.js // ... // 初始化config數據 async function initConfig(){    const isExist = await configSchema.exists()    if(!isExist) {        const result = await configSchema.hmset(null, {            header: {                columns: ['首頁'],                height: '50',                backgroundColor: '#000000',                logo: ''            },            banner: {                type: '1', // 0為標簽云,1為輪播圖                label: [],                bgUrl: '',                bannerList: []            },            bannerSider: {                tit: '側邊欄信息',                imgUrl: '',                desc: ''            },            supportPay: {                tit: '',                imgUrl: ''            }        })        if(!Array.isArray(result)) {            console.log('配置信息初始化完成')        }else {            throw result        }    } }  initConfig()

我們在server/src/db/schema/config.js下可以看到這段初始化config的代碼,接下來看看路由定義:

全棧CMS系統服務端啟動的細節有哪些

我們找到server/src/routes/config.js,這里我們使用修飾器和class來定義我們的路由api路徑為/api/v0/config/all,由于我們開的服務跑在3000端口的,所以我們使用postman這樣訪問:

全棧CMS系統服務端啟動的細節有哪些

這樣,是不是就拿到我們之前定義好的初始化數據了呢?

到此,關于“全棧CMS系統服務端啟動的細節有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

cms
AI

南康市| 拜泉县| 龙南县| 临湘市| 铜山县| 和顺县| 思南县| 若尔盖县| 神农架林区| 绥中县| 东乡族自治县| 息烽县| 阿拉善盟| 沙洋县| 平定县| 灵山县| 渭南市| 石林| 闸北区| 固始县| 涪陵区| 崇明县| 溧阳市| 胶南市| 砀山县| 抚顺市| 双江| 大竹县| 蕲春县| 西宁市| 晋州市| 申扎县| 淮滨县| 绥化市| 逊克县| 宜兰县| 河东区| 恩施市| 新巴尔虎右旗| 额尔古纳市| 桂东县|