メール送信
アドオン契約が必要
アドオンにてsendGridやmailGunなどを利用する。
MySQLを利用する
アドオン契約が必要
ドキュメントルート以下にprocfileを作成
ファイル名Procfileで内容は
web: vendor/bin/heroku-php-apache2 public
こんな感じ
heroku configでデータベース接続情報を取得し、
phpのdb接続設定やmysqlコマンドの接続情報に利用する
mb_convert_encodingが使えない
composer.jsonに次を記載
{
"require": {
"ext-mbstring": "*"
}
}
インデントは半角スペースでタブを使うとverifyエラーとなる。
date関数を利用する際の注意
デフォルトタイムゾーンを指定する。
date_default_timezone_set("Asia/Tokyo");
push時にcomposerエラー
remote: ! ERROR: Your 'composer.json' lists dependencies inside 'require',
remote: but no 'composer.lock' was found. Please run 'composer update' t
remote: re-generate 'composer.lock' if necessary, and commit it into you
remote: repository. For more information, please refer to the docs at
remote: https://devcenter.heroku.com/articles/php-support#activation
対策
php composer.phar update
これでできたcomposer.lockファイルをaddしてcommitして再度push
remote: Verifying deploy.... done.
vender/ ディレクトリはaddする必要は無い