2
我想設置Ghost(node.js博客應用程序)在一臺heroku服務器上運行。我在這裏遵循this教程,但我在加載應用程序URL時遇到應用程序錯誤。望着日誌,我發現了以下堆棧跟蹤:在heroku服務器上的幽靈博客的密碼認證失敗
2016-12-16T10:00:08.185701+00:00 heroku[web.1]: Starting process with command `NODE_ENV=production node index.js`
2016-12-16T10:00:11.989635+00:00 app[web.1]:
2016-12-16T10:00:11.989655+00:00 app[web.1]: ERROR: password authentication failed for user "xxxxxxxxxxxxxx"
2016-12-16T10:00:11.989656+00:00 app[web.1]: error: password authentication failed for user "xxxxxxxxxxxxxx"
2016-12-16T10:00:11.989656+00:00 app[web.1]:
2016-12-16T10:00:11.989658+00:00 app[web.1]: at Connection.parseMessage (/app/node_modules/pg/lib/connection.js:361:17)
2016-12-16T10:00:11.989657+00:00 app[web.1]: at Connection.parseE (/app/node_modules/pg/lib/connection.js:534:11)
2016-12-16T10:00:11.989659+00:00 app[web.1]: at TLSSocket.<anonymous> (/app/node_modules/pg/lib/connection.js:105:22)
2016-12-16T10:00:11.989660+00:00 app[web.1]: at emitOne (events.js:96:13)
2016-12-16T10:00:11.989661+00:00 app[web.1]: at readableAddChunk (_stream_readable.js:176:18)
2016-12-16T10:00:11.989662+00:00 app[web.1]: at TLSSocket.Readable.push (_stream_readable.js:134:10)
2016-12-16T10:00:11.989660+00:00 app[web.1]: at TLSSocket.emit (events.js:188:7)
2016-12-16T10:00:11.989663+00:00 app[web.1]: at TLSWrap.onread (net.js:548:20)
2016-12-16T10:00:11.989664+00:00 app[web.1]:
2016-12-16T10:00:12.059675+00:00 heroku[web.1]: Process exited with status 0
2016-12-16T10:00:12.098899+00:00 heroku[web.1]: State changed from starting to crashed
2016-12-16T10:00:11.574238+00:00 app[web.1]: WARNING: Ghost is attempting to use a direct method to send email.
2016-12-16T10:00:11.574254+00:00 app[web.1]: It is recommended that you explicitly configure an email service.
2016-12-16T10:00:11.575112+00:00 app[web.1]: Help and documentation can be found at http://support.ghost.org/mail.
2016-12-16T10:00:11.575114+00:00 app[web.1]:
2016-12-16T12:20:59.497399+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=ai-blog.herokuapp.com request_id=a725a350-ade1-4f00-9b8a-125fac34eb23 fwd="82.46.0.56" dyno= connect= service= status=503 bytes=
2016-12-16T12:21:01.504908+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=ai-blog.herokuapp.com request_id=cc0c4f9b-f3af-4867-942f-0c7f295f9b90 fwd="82.46.0.56" dyno= connect= service= status=503 bytes=
2016-12-16T12:21:03.381794+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=ai-blog.herokuapp.com request_id=ee190254-0159-4ba0-aa74-6e58f661c966 fwd="82.46.0.56" dyno= connect= service= status=503 bytes=
看來,這裏的錯誤的重要組成部分,是密碼失敗:但是我有雙和三倍檢查所有的heroku varibles設置正確,即沒有錯別字,在字符串的起始端沒有多餘的空格。
此外,該應用程序在本地運行良好。
這個問題似乎比較常見,但我已經嘗試了其他帖子的大部分解決方案,似乎沒有任何東西可以解決問題。
的解決方案,我已經試過:
- 檢查了所有可變因素錯別字
- 經過正確的數據庫促進
- 手動添加用戶credendials到遠程數據庫(出於某種原因,我仍然可以通過命令行訪問遠程數據庫)
- 請遵循以下命令
heroku config:set PGSSLMODE=require
- 確保我在連接到URL時使用https中的https網站通過瀏覽器
- 我已經添加了以下在我config.js
ssl: true
- 我也檢查了生產環境的DB PARAMS,我在生產環境中
Sugguestions那我還沒有試過:
- 有人建議節點需要更新。但是我看不出任何更新heroku使用的節點版本的方法。
- Somone建議postgres需要更新。但是我看不出有什麼方法可以在heroku服務器上進行更新。但是,我確實已將package.json文件中的版本號從4.1.1更新到4.5.5,並將其從optionalDependencies移至依賴項。
- 編輯pg_hba.conf的 - 再次,我想這個文件存在Heroku的服務器上,我不能訪問它
任何人有什麼想法?
它爲我工作,謝謝! – cyberz
對不起,我花了這麼長時間接受答案!但是,這是有效的! –