Google App Engine for PHPプレビュー版でphpinfoを動かしてみた

gae-eyecatch

※当ブログではアフィリエイト広告を利用しています。

Googleが提供するクラウドプラットフォーム「Google App Engine」で、PHPのプレビュー版がオープンで利用できるようになりました。

Google App Engineを使うのは初めてでしたが、とりあえずphpinfoだけであれば無料で動作確認できたので使用開始から実際の動作までを手順にまとめてみます。

Google App Engineの使用開始とアプリケーションの作成

GoogleアカウントがあればすぐにGoogle App Engineを使用開始できます。

Google App Engineの使用開始

Google App Engine公式サイトで、「使用を開始する」をクリックします。
Google App Engine使用開始

ログイン画面になるため、Googleアカウントでログインします。
Google App Engine使用開始 その2

アプリケーションの作成

アプリケーションの作成画面で、「Create Application」をクリックします。
アプリケーションの作成

作成するアプリケーションの内容を入力します。

Application Identifier
アプリケーション固有のID
Application Title
アプリケーション固有の名前
Authentication Options (Advanced)
認証オプション。Open to all Google Accounts users (default)でOKです。

I accept these terms. にチェックを入れ、「Create Application」をクリックします。
アプリケーションの作成 その2

アプリケーションの作成が成功すると以下のような画面になります。今回は「lancork」で作成しました。
アプリケーションの作成 その3

PHP SDKのインストール

Google App EngineにPHPアプリケーションをデプロイするにはPython 2.7とPHP SDK for App Engineが必要なため、それぞれインストールします。

Pythonのダウンロード・インストール

2013年10月時点ではPython2.7.5が安定板のため、Pythonのダウンロードページより、Python2.7.5をダウンロードします。
Python2.7.5 ダウンロード

ダウンロード後、python-2.7.5.msiからPythonをインストールします。設定はすべてデフォルトでOKでした。

PHP SDK for App Engineのダウンロード・インストール

公式サイトのInstalling the PHP SDK on WindowsよりSDKをダウンロードします。
(わかりにくいですが「the latest PHP SDK for App Engine」のリンクの場所です。)
GAE PHP SDK Download

ダウンロード後、GoogleAppEngine-1.8.5.msiからPythonをインストールします。設定はすべてデフォルトでOKでした。

Configファイルとphpinfo実行用PHPファイルの作成

ローカルの任意のフォルダに設定ファイルとPHPファイルを作成していきます。今回はD:\gaetestにファイルを作成しました。

Configファイルの作成

アプリの動作に必要となる設定ファイルapp.yamlを作成します。applicationの値は先ほど作成したアプリケーションのIDに、handlersのphpファイルは動作させるphpのファイル名に置き換えて下さい。

application: lancork
version: 1
runtime: php
api_version: 1

handlers:
- url: /.*
  script: index.php

上記は必要最低限の設定ですが、他の設定項目は公式サイトのapp.yamlのリファレンスから参照可能です。

実行用PHPファイルの作成

以下の内容でphpinfo()実行用のphpファイルindex.phpを作成します。

<?php
phpinfo();

php.iniファイルの作成

Google App Engineではphp.iniファイルを作成し、phpinfo()実行を有効にする設定を加える必要があります。以下の内容でphp.iniファイルを作成します。

google_app_engine.enable_functions = "phpversion, phpinfo"

アプリケーションのデプロイ

ローカルに作成したファイルを、Google App Engineに反映します。

下記コマンドを実行します。D:\gaetestの部分は設定ファイル、phpファイルを作成したフォルダに読み替えてください。

appcfg.py update D:\gaetest

※もしThis application does not exist (app_id=u’appname’).となった場合、--no_cookiesオプションを付けるとうまくいきます。

appcfg.py update D:\gaetest --no_cookies

コマンドを実行するとEmailとパスワードを聞かれます。EmailはGoogleアカウントのメールアドレスを入力すれば良いのですが、私の場合はGoogleアカウントに2段階認証を設定していたためかパスワードはアプリケーション固有のパスワードが必要でした。こちらの手順で生成したアプリケーション固有のパスワードを入力します。

デプロイに成功すると「Completed update of app: appname, version: 1」と表示されます。
GAE PHP デプロイ

アプリケーションの動作確認

デプロイ後、ブラウザでhttp://[appid].appspot.com/を開くとphpinfoが表示されます。今回作成したサンプルは以下です。

http://lancork.appspot.com/

PHPのバージョンは5.4.19でした。
gae phpinfoの確認

まとめ

プレビュー版ということで日本語のドキュメントが見当たりませんでしたが、複雑な設定無しであれば簡単にPHPアプリケーションを動かせそうです。Google App Engine for PHPのドキュメントはこちらにあるので、ちょっとしたアプリケーションを公開する際には使ってみたいと思いました。