HerokuでPHPのアプリケーションを動かしてみる

HerokuでPHPのアプリケーションを動かしてみる

EC-CUBEをHerokuに5分で立ち上げられるようにしましたを書くためにやったこと、ハマったことを書いておきます

Herokuにアカウントを登録

Heroku

HerokuToolbeltのインストール

アカウント作るとツールのダウンロードが出来ますが、MacならHomebrewのほうが早そうなのでbrewを使って導入します
heroku login には秘密鍵、公開鍵が必要なので事前に作っておくこと

Herokuへのデプロイ

gitで管理しているとこでコマンドを叩けばOK

ハマリポイント①
pushするリポジトリは master じゃないと Pushed to non-master branch, skipping build. を言われてbuildしてくれない

ハマリポイント②
ルートに composer.json を置いておいても、package.json があるとPHPのアプリと思ってくれずにNode.jsとしてbuildしようとしてコケる。
なにか回避方法があるのでしょうか?

Herokuでかくにん!

ハマリポイント③
こんなログが出てエラー画面しか出ない

heroku scale web=0
heroku scale web=1
とする事により、起動するようになった。
起動しなくなった原因は不明

herokuでerror H14 – Qiita

よくわかんないけど、これで動いた

ハマリポイント④
PHPのエラーログや、アプリで出力しているエラーログファイルはHerokuの特性上見ることが出来ません
display_errorsをOnに最初はしておくほうが懸命です

ドキュメントルートの変更

Procfile をリポジトリのルートに設置すると変更できる
nginxを使いたい場合なんかもこのファイルで設定する

PostgreSQL

Herokuでは無料でPostgreSQLが使える

DATABASE_URLという環境変数に接続情報が入っているので、これを使えばアレコレ出来る
もちろん、ダッシュボードからも確認できる

概ね、Getting Started with PHP on Heroku | Heroku Dev Centerを見ればわかるとは思います

コメントを残す