前回、Google App Engine (以下GAE) でPHPを利用する方法を紹介しました。
通常Webサーバを設置しPHPの環境を整えるとき、php.iniに設定を行います。Google Compute Engineなどでサーバを構築したのであれば、インストールしたPHPのフォルダ内にphp.iniが存在しますが、GAE でPHPを利用する場合、php.iniはどこにあるのでしょうか。答えは簡単です。app.yamlと同じ位置に配置すれば問題ありません。
php.ini
参考に php.ini が存在しない状態で、日時を表示しましょう。「index.php」を次のようにします。
<?php
echo date("Y/m/d H:i:s");
そしてデプロイし結果を表示すると、UTCの時刻が表示されます(下記は2018/9/18 18:07:11に実行)。
PHP の TimeZone を設定するには php.ini の変更が必要です。「app.yaml」と同じフォルダに「php.ini」を作成し、次のように記しましょう。
date.timezone = "Asia/Tokyo"
そして同じくデプロイし結果を表示すると、JSTの時刻が表示されていることがわかります。(下記は2018/9/18/ 18:08:10に実行)php.ini が有効になっていることがわかりますね。
phpinfo()
前述の通り、php.ini にて設定を行うことができましたが、phpinfoを表示するにも php.ini への設定が必要になります。
google_app_engine.enable_functions = "phpinfo"
この設定がなければphpinfoは何も表示してくれません。また「index.php」を次のように修正しましょう。
<?php
echo phpinfo();
それでは上記を追記した後、デプロイし結果を表示しましょう。
確かにPHP情報が表示されましたね。
まとめ
Google App EngineでPHPを利用することができますが、その設定を行う php.ini は app.yaml と同じフォルダに配置するだけで大丈夫でした。また開発中の参考になるphpinfoを表示するための設定も、GAE では php.ini に記述すれば表示することができました。非常にお手軽ですね。