將Laravel應用部署到Heroku

nbutluo發表於2020-07-30

學習完了 L01 Laravel 教程 - Web 開發實戰入門,大致總結了下如何釋出上線,參考教程,自己總結整理了一份,如有錯漏,懇請斧正。

Heroku 的基本安裝配置

首先到 Heroku官網 註冊一個賬戶

在示例教程定製的 box 中一定要 ssh 登入登入到虛擬機器裡

heroku login

新增 SSH Key 到 Heroku 上

heroku keys:add

要將應用部署到 Heroku 上,我們還需要在 Laravel 專案下新建一個 Procfile 檔案,通過配置該檔案來告訴 Heroku 應當使用什麼命令來啟動 Web 伺服器。 接著還需要將該檔案納入到 Git 版本控制中:

echo web: vendor/bin/heroku-php-apache2 public/ > Procfile
git add -A
git commit -m "Procfile for Heroku"

在 Heroku 上建立新應用

我們可以使用 heroku create 命令在 Heroku 上建立一個新應用:

heroku create


warm-cove-63246 是 Heroku 隨機為應用生成的預設名稱,而https://warm-cove-63246.herokuapp.com/ 則是應用的線上地址
更改應用名稱
如果你對生成的預設名稱不滿意,你可以使用 heroku rename 來對應用名稱進行更改,但要保證更改的名稱未被其它人佔用。

heroku rename your-app-name

宣告 buildpack

Heroku 平臺支援多種語言,在進行應用部署時, 宣告Heroku 說我們的應用是用 PHP 寫的

heroku buildpacks:set heroku/php

設定 APP key

Laravel 使用 App Key 來完成對使用者會話及其它資訊的編碼加密操作,因此我們也需要將 App Key 一同加入到 Heroku 的配置中。 首先,使用 Laravel 自帶的 artisan 命令來生成 App Key:

php artisan key:generate --show

將生成的 App Key 替換掉下面命令的 <your_app_key> ,並執行該命令列來完成配置:

heroku config:set APP_KEY=<your_app_key>

將Laravel應用部署到Heroku

部署上線

我們要做的最後一步就是將程式碼推送和部署到 Heroku 上

git push heroku master

程式碼推送成功之後,可以使用此命令來快速開啟線上應用:

heroku open

如果無法在瀏覽器開啟,複製連結直接訪問

常見錯誤

heroku login 錯誤

如果無法自動登入時候可以複製連結到瀏覽器中開啟

將Laravel應用部署到Heroku

資料庫連線錯誤

若是使用homestead連線資料庫時候,有兩種方式,將 .env 檔案中 127.0.0.1 修改為 localhost

DB_HOST=localhost
DB_PORT=33060
DB_DATABASE=weibo
DB_USERNAME=homestead
DB_PASSWORD=secret

方法2: 修改 DB_HOST192.168.10.10 ,對應的埠應該修改為 3306

DB_HOST=192.168.10.10
DB_PORT=3306
DB_DATABASE=weibo
DB_USERNAME=homestead
DB_PASSWORD=secret
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章