雄大です。
Rubyユーザーではないので、herokuを避けてました。
PHPが動くこと自体知りませんでした。
ただ、たまたま、heroku上でWordpressを動かす必要があり、テスト環境を構築しました(そもそもはherokuはPHP非推奨なので、本番でがっつりと動かす場合はオススメしません。)
やりたいこと。
⇒今動いているheroku上で動いているWordpressのテスト環境を構築する。
はまったことを2点書いておきます。
- herokuにはmbstringのモジュールが入っていない。
- PHPを5.5系にすると、mysql絡みでうまく動かない。
herokuにはmbstringのモジュールが入っていません。wordpressもこれでエラーになります。
そこで、herokuのBuildpackを利用します。
Buildpackというのは、アプリケーションをデプロイするたびに任意のコマンドを実行できる仕組みです。これを利用すれば、公式サポートされていない言語でもHeroku上で動作させることができます。http://d.hatena.ne.jp/hnw/20120603より引用
PHP5.5系の最新版で動かす場合は、その他の記事を見ればいいのですが、
WordPressの絡みで今回はPHP5.4系を入れます。
そこで、こちらのgithubにあるBuildpackを利用します。
GitHub - iphoting/heroku-buildpack-php-tyler at php/5.4.17
Superseded by: Formerly, a custom Heroku buildpack that bundles Nginx + PHP (via FPM). PHP dependencies are handled by Composer. - GitHub - iphoting/hero...
これを使うために、herokuのconfigコマンドを用います。
$heroku config:add BUILDPACK_URL=git://github.com/iphoting/heroku-buildpack-php-tyler.git
これで、herokuでPHP5.4系でmbstringがうまく入りました。
この画面を出すだけで、こんなに感動するとはw
コメント
[…] ちょうど、少し前に、このような記事を書きました。 【heroku】【wordpress】テスト環境を構築したときにはまったお話 […]
[…] ートしていないときはbuildpackで対応しました。 【heroku】【wordpress】テスト環境を構築したときにはまったお話 […]