国产精品与欧美交牲久久久久_国产精品毛片在线完整版_成人欧美在线视频_一个人看的www日本高清视频_日韩AV东北熟女_一区二区三区黄色毛片免费高清视频_亚洲欧美另类人妻_四虎精品免费视频_久久国产精品99精品国产_免费看黄片在线看

我們經(jīng)常使用前端的免費(fèi)空間GitHub,但是后端經(jīng)常聽(tīng)到的是Heroku云平臺(tái),目前支持以下語(yǔ)言。本文主要介紹Node.js組合MySQL與Git上傳。

Node.js+MySQL部署Heroku云平臺(tái)

本篇目錄

環(huán)境建置

注冊(cè)

安裝Heroku Cli

登入Heroku云平臺(tái)

布署

Git Ignore

建立Git

新增/連接APP

布署Heroku云平臺(tái)

MySQL配備

Session Store

報(bào)錯(cuò)處理

環(huán)境建置

注冊(cè)

首先,我們先進(jìn)入官網(wǎng),選擇注冊(cè)(Sign up)

填寫(xiě)姓名、郵件等信息

等候Heroku云平臺(tái)將驗(yàn)證信寄到信箱后,點(diǎn)選連接并連接到輸入密碼

完成

Node.js組合MySQL與Git上傳

安裝Heroku cli

以后我們都要用Heroku cli先附上下載頁(yè)面。連接后,根據(jù)您的系統(tǒng)安裝合適的版本。

另外,我們會(huì)組合Git上傳專案,Git安裝可參考此處,

關(guān)於Git版本控制可參考高見(jiàn)龍大Git教學(xué)。

image

為了保證以后的順利運(yùn)行,我們還需要Node版本8以上npm,您可以使用以下指令查詢是否已安裝。

$node--version

v10.16.1

$npm--version

6.12.0

登入Heroku

在完成上述環(huán)境建設(shè)后,您可以在終端上輸入:

$herokulogin

heroku:Press any key to open up the browser to login or q to exit:

Opening browser to https://cli-auth.heroku.com/auth/browser/xxx

Logging in...done

Logged in as [email protected]

這時(shí)會(huì)打開(kāi)Heroku登錄頁(yè)面,輸入帳號(hào)密碼OK了!

布署

資料夾目前如下:

Git Ignore

在Git上傳前應(yīng)該做的重大事情。

專案內(nèi)有個(gè)node_modules不需要上傳資料,因?yàn)樗萘看?,一般?lái)說(shuō)Heroku云平臺(tái)會(huì)自動(dòng)根據(jù)package.json安裝所需的套件。因此,我們需要先建立它.gitignore文件和新的忽略規(guī)則。


建立Git

再來(lái)建立專案Git版本控制:

//進(jìn)入專用數(shù)據(jù)

$cd chatroom

$git init

$git add.

$git commit -m 'first commit'

新增/連接APP

新增HerokuAPP,后面沒(méi)有名字Heroku會(huì)自己給與APP隨機(jī)名字。

$ heroku create [app-name]

Creating ? thef2e-chatroom...done

https://thef2e-chatroom.herokuapp.com/|

https://git.heroku.com/thef2e-chatroom.git

請(qǐng)注意,如果您想更改項(xiàng)目名稱,請(qǐng)?jiān)L問(wèn)官方網(wǎng)站setting更改他的兩個(gè)網(wǎng)站不會(huì)改變,所以輸入以下指令更安全!

$herokuapps:rename--app[old-name][new-name]

現(xiàn)在,我們得到了APP網(wǎng)址以及Git數(shù)據(jù)庫(kù)網(wǎng)站。我們使用它Heroku將本地專案與遠(yuǎn)端聯(lián)系起來(lái):

$herokugit:remote-a[app-name]

//查看

$ git push heroku master

Enumerating objects: 6, done.

Counting objects: 100% (6/6), done.

Delta compression using up to 4 threads

Compressing objects: 100% (6/6), done.

Writing objects: 100% (6/6), 10.87 KiB | 5.44 MiB/s, done.

Total 6 (delta 0), reused 0 (delta 0)

remote: Compressing source files... done.

remote: Building source:

remote:

remote: -----> Node.js app detected

remote:

remote: -----> Creating runtime environment

remote:

remote:        NPM_CONFIG_LOGLEVEL=error

remote:        NODE_ENV=production

remote:        NODE_MODULES_CACHE=true

remote:        NODE_VERBOSE=false

remote:

remote: -----> Installing binaries

remote:        engines.node (package.json):  unspecified

remote:        engines.npm (package.json):   unspecified (use default)

remote:

remote:        Resolving node version 12.x...

remote:        Downloading and installing node 12.13.0...

remote:        Using default npm version: 6.12.0

remote:

remote: -----> Installing dependencies

remote:        Installing node modules (package.json + package-lock)

remote:        added 123 packages from 102 contributors and audited 239 packages in 3.359s

remote:        found 0 vulnerabilities

remote:

remote:

remote: -----> Build

remote:

remote: -----> Pruning devDependencies

remote:        audited 239 packages in 1.408s

remote:        found 0 vulnerabilities

remote:

remote:

remote: -----> Caching build

remote:        - node_modules

remote:

remote: -----> Build succeeded!

remote:  !     This app may not specify any way to start a node process

remote:        https://devcenter.heroku.com/articles/nodejs-support#default-web-process-type

remote:

remote: -----> Discovering process types

remote:        Procfile declares types     -> (none)

remote:        Default types for buildpack -> web

remote:

remote: -----> Compressing...

remote:        Done: 23.1M

remote: -----> Launching...

remote:        Released v3

remote:        https://thef2e-chatroom.herokuapp.com/ deployed to Heroku

remote:

remote: Verifying deploy... done.

To https://git.heroku.com/thef2e-chatroom.git

 * [new branch]      master -> master

如果你按照我的倉(cāng)庫(kù)步驟建立一個(gè)項(xiàng)目,你會(huì)發(fā)現(xiàn)終端有一行顯示驚嘆號(hào),因?yàn)镠eroku需要一行Start指示建立專案,我們package.json在報(bào)錯(cuò)之前,檔中沒(méi)有明確的指示。

所以我們需要在那里JSON檔內(nèi)多新增一行start,并重新push一次,Heroku環(huán)境建設(shè)成功。

"scripts": {  

    "test": "echo \"Error: no test specified\" && exit 1",  

    "start": "node index.js"

},

MySQL配備

然后我們來(lái)到第二個(gè)價(jià)格,準(zhǔn)備把當(dāng)?shù)氐臄?shù)據(jù)庫(kù)push上來(lái),這次使用的服務(wù)是ClearDB。

我們必須首先增加一個(gè)新的項(xiàng)目Add-ons:

$ heroku addons:create cleardb:ignite

Creating cleardb:ignite on ? thef2e-chatroom... free

Created cleardb-octagonal-43734 as CLEARDB_DATABASE_URL

Use heroku addons:docs cleardb to view documentation

還可以在Heroku新網(wǎng)站:

image

通過(guò)以下指令,我們可以知道ClearDB數(shù)據(jù)庫(kù)配備:

$ heroku config | grep CLEARDB_DATABASE_URL


CLEARDB_DATABASE_URL:mysql://be6c96a165xxx0:[email protected]/heroku_e8d000339887xxx?reconnect=true

// 補(bǔ)充

// username: be6c96a16xxxd

// password: c504fxxx

// host: us-cdbr-iron-east-05.cleardb.net

// database: heroku_e8d000339887xxx

接著開(kāi)啟MySQLWorkbench,新的連接可以連接到新的數(shù)據(jù)庫(kù),然后連接到當(dāng)?shù)囟薲atabase導(dǎo)出,引入遠(yuǎn)端數(shù)據(jù)庫(kù)OK了!

image

順便說(shuō)一句,由于遠(yuǎn)端數(shù)據(jù)庫(kù)的增加,我們?cè)绦虼a中連接的本地端數(shù)據(jù)庫(kù)也需要更換為遠(yuǎn)端數(shù)據(jù)庫(kù)!

SessionStore

最后,假如你有介紹Session在項(xiàng)目中,還需要添加一個(gè)新的配備特性store,也就是Session存放的地方,在express-sessionnpm下面可以找到很多存儲(chǔ)方法。

image

我們選用express-mysql-session,同樣先安裝:

$ npm install express-mysql-session --save

并引入和使用(設(shè)置在Session上方):

const MySQLStore = require('express-mysql-session')(session);


const options = {

  connectionLimit: 10,

  host: 'us-cdbr-iron-east-05.cleardb.net',

  user: 'be6c96a165xxx0',

  password: 'c504fxxx',

  database: 'heroku_e8d000339887xxx'

}

const sessionStore = new MySQLStore(options);


// 此處為 session 設(shè)置

app.use(session({

  secret: 'thef2e_chatroom',

  resave: false,

  saveUninitialized: false,

  cookie: {

    maxAge: 60 * 60 * 1000 * 3,

  },

}));

報(bào)錯(cuò)處理

在APP網(wǎng)站右上角可以打開(kāi)APP(如果你看到這個(gè)頁(yè)面代表錯(cuò)誤。


此時(shí)可以使用以下指令查詢(使用以下指令)ctrlc撤出):

$ heroku logs --tail


如果你報(bào)錯(cuò)了,多看終端,仔細(xì)看肯定會(huì)發(fā)現(xiàn)問(wèn)題!

以上是不讀報(bào)錯(cuò)的最大經(jīng)驗(yàn)。


yinyiprinting.cn 寧波海美seo網(wǎng)絡(luò)優(yōu)化公司 是網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站優(yōu)化,企業(yè)關(guān)鍵詞排名,網(wǎng)絡(luò)營(yíng)銷知識(shí)和開(kāi)發(fā)愛(ài)好者的一站式目的地,提供豐富的信息、資源和工具來(lái)幫助用戶創(chuàng)建令人驚嘆的實(shí)用網(wǎng)站。 該平臺(tái)致力于提供實(shí)用、相關(guān)和最新的內(nèi)容,這使其成為初學(xué)者和經(jīng)驗(yàn)豐富的專業(yè)人士的寶貴資源。

點(diǎn)贊(41) 打賞

聲明本文內(nèi)容來(lái)自網(wǎng)絡(luò),若涉及侵權(quán),請(qǐng)聯(lián)系我們刪除! 投稿需知:請(qǐng)以word形式發(fā)送至郵箱[email protected]

評(píng)論列表 共有 10 條評(píng)論

付~~ 11月前 回復(fù)TA

當(dāng)局者迷,旁觀者清,存在競(jìng)爭(zhēng),才會(huì)進(jìn)步

小明seo 1年前 回復(fù)TA

我的.chapiao.com為什么有時(shí)候是4有時(shí)候突然變0了,請(qǐng)問(wèn)這是怎么回事兒?還有百度排名突然下降,我沒(méi)有作弊,就是修改了一下網(wǎng)頁(yè),后來(lái)我又恢復(fù)了,請(qǐng)問(wèn)多長(zhǎng)時(shí)間排名才可以上去呢?謝謝指點(diǎn)

輔助線 1年前 回復(fù)TA

現(xiàn)在主流又開(kāi)始慢慢簡(jiǎn)單了….這個(gè)是實(shí)話…

折800 1年前 回復(fù)TA

存在即為合理。。。。。。。。。。沒(méi)辦法

feng賀興林 1年前 回復(fù)TA

書(shū)早買了·不過(guò)還沒(méi)看完。。非常不錯(cuò)

折疊車 1年前 回復(fù)TA

什么意思~

jackly 1年前 回復(fù)TA

女兒好可愛(ài)呀。。 愿你們幸福!

簽證網(wǎng) 1年前 回復(fù)TA

我剛剛在開(kāi)始這方面的學(xué)習(xí),看了文章覺(jué)得還是有幫助,可是具體的一些東西太復(fù)雜了,還是不能完全弄懂。高手請(qǐng)多賜教賜教,我這網(wǎng)站是做辦公室家具的

china 1年前 回復(fù)TA

支持這樣的技術(shù)性文章 實(shí)踐出真知嘛! 敬佩實(shí)踐的精神、分享的精神

wWMm 1年前 回復(fù)TA

貌似時(shí)間趕得不好,渣浪今日剛巧關(guān)閉了評(píng)論。

立即
投稿
發(fā)表
評(píng)論
返回
頂部