Google App Engineを利用してphpinfo()を実行し表示
Google App Engine Launcherではデモアプリケーションを作成して実行してみたら、
自分でアプリケーション内にディレクトリを作成して、
phpinfo();を表示するようなページを作成してみるといいでしょう。
ここではminishellデモアプリケーションをカスタマイズしてphpinfo();を表示してみます。
このカスタマイズの元にしているデモアプリケーションの作成手順は、
以下でご紹介しています。
概要
Google App Engineを利用してphpinfo()を実行し表示
Google App Engine Launcherから作成した、
minishellデモアプリケーションのディレクトリ内にphpinfo();表示するphpを設置します。
phpinfo.phpファイルの準備
minishellデモアプリケーションのディレクトリ内に対して、
phpinfo.phpファイルを作成します。
phpinfo.phpファイルの中身は以下のように記述しています。
1 2 |
<?php phpinfo(); |
app.yamlファイルの編集
app.yamlファイルを開き編集し、以下の2行を挿入します。
22 23 |
- url: /phpinfo\.php script: phpinfo.php |
挿入後のapp.yamlファイルは以下のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
application: shell-php-algo version: 1 runtime: php api_version: 1 handlers: - url: /static static_dir: static expiration: 30d - url: /favicon.ico static_files: static/favicon.ico upload: static/favicon.ico expiration: 30d - url: /shell.do script: shell.php - url: /reset.do script: reset.php - url: /phpinfo\.php script: phpinfo.php - url: .* script: frontpage.php |
アプリケーションの実行
まず、デモアプリケーションを実行します。
Google App Engine Launcherでアプリケーションを選択し[Run]をクリックします。
アプリケーションが実行状態になったら[Browse]をクリックします。
ブラウザが起動してアプリケーションが表示されます。
ドメインルートの表示はこれまで通り、 minishellデモアプリケーションが表示されます。
ここで、今回追加したphpinfo.phpをURLに指定します。
URLにアクセスするとphpinfo();の出力結果が表示されます。
ディレクトリアクセスとファイル名指定の例
またphpinfoをサブディレクトリ内で実行する場合には、
以下のような記述を追加することでディレクトリアクセスでphpinfo.phpを表示させることができます。
25 26 |
- url: /phpinfo/.* script: phpinfo.php |
挿入後のapp.yamlファイルは以下のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
application: shell-php-algo version: 1 runtime: php api_version: 1 handlers: - url: /static static_dir: static expiration: 30d - url: /favicon.ico static_files: static/favicon.ico upload: static/favicon.ico expiration: 30d - url: /shell.do script: shell.php - url: /reset.do script: reset.php - url: /phpinfo\.php script: phpinfo.php - url: /phpinfo/.* script: phpinfo.php - url: .* script: frontpage.php |
URLに「/phpinfo/」ディレクトリを追加してアクセスすると、
指定したファイルの phpinfo.phpが実行され表示されます。
ローカルで実行の確認ができましたので、公開します。
編集したアプリケーションの公開
Google App Engine Launcherでアプリケーションを選択し[Deploy]をクリックします。
Googleアカウントとパスワードを入力し、公開を実行します。
すぐにアップロードが開始されアプリケーションがパブリッシュされます。
アップロード中はコンソールウインドウが表示されます。
「You can close this window now.」が表示されたらアップロードは完了です。
アプリケーションの公開が完了したら、
Google App Engineのアプリケーション一覧の
ポップアップアイコンをクリックして、サイトを表示するかURLを指定してアクセスします。
URLは、[アプリケーション名].appspot.com ドメイン上で実行されます。
URLにアクセスするとドメインルートのアクセスではこれまで通り、
minishellデモアプリケーションが表示されます。
デモアプリケーションの実行例
http://shell-php-algo.appspot.com/
phpinfo.phpをURLに指定し、アクセスするとphpinfo();の出力結果が表示されます。
デモアプリケーションの実行例
http://shell-php-algo.appspot.com/phpinfo.php
URLに「/phpinfo/」ディレクトリを追加してアクセスすると、
指定したファイルの phpinfo.phpが実行され表示されます。
デモアプリケーションの実行例
http://shell-php-algo.appspot.com/phpinfo/
存在しないディレクトリなどの指定は、
app.yamlに指定された以下行に従って、すべてトップページの「frontpage.php」によって処理されます。
デモアプリケーションの実行例
http://shell-php-algo.appspot.com/111/
さいごに
このようにしてデモアプリケーションを元にして編集することで、
PHPアプリケーションをGoogle App Engine上で公開することができるようになります。
phpinfo()を公開してはダメじゃないかと思われる部分はあるかもしれませんが、
これはデモアプリケーションの一環でGoogleさんから既に以下URLにて公開されています。
phpinfo() @Google App Engine for PHP
Google™はGoogle Inc. の登録商標(第4478963号及び第4906016号)です。
GoogleロゴはGoogle Inc. の国際登録商標です。
国際登録番号:881006及び926052及び1086299及び1091990及び1145934
公開日: