SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Google App Engine for Javaで動作するスクリプト系言語

PHPも使える! Google App Engine for Java(前編)

Google App Engine for Javaで動作するスクリプト系言語 (1)

  • X ポスト
  • このエントリーをはてなブックマークに追加

echo.phpの実行

 それでは早速実行してみましょう。パッケージ・エクスプローラーでプロジェクト(PHPonGAE4J)を選択し、右クリックで出てくるメニューから[実行]-[Web Application]を選択します。

 コンソールに「The server is running at http://localhost:8080/」と表示されていれば実行開始しています。停止させる場合には、[終了]ボタンを押下します。

コンソール
コンソール

 それでは、次のURLにブラウザでアクセスしてみましょう。

http://localhost:8080/echo.php

 次のような画面が表示されていることと思います。

Echoアプリケーション実行画面
Echoアプリケーション実行画面

 テキストフィールドにいろいろな文字を入力して[送信]ボタンで送信してみてください。アルファベットだけではなく、ひらがなや漢字を入力した場合でも正しく送信できているでしょうか。

 ここまでで、ローカルの実行サーバでPHPスクリプトが動作することが確認できました。

Google App Engineへデプロイ

 ローカルの実行サーバで動くことを確認できたら、今度は実際の実行環境であるGoogle App Engineにデプロイしてみましょう。

 デプロイする際に必要となる「Application ID」はあらかじめ取得しておく必要があります。「Application ID」の取得などについては『Google App Engine for Javaを使ってみよう!(1)Google Plugin for Eclipse』で詳しく紹介されていますので、併せてご参照ください。

 Google Plugin for Eclipseを使用してデプロイする場合には、「Application ID」と「Version」を登録しておく必要があります。

 パッケージ・エクスプローラーでプロジェクト(PHPonGAE4J)を選択し、右クリックで出てくるメニューから[Google]-[App Engine Settings...]を選択します。

 表示されるダイアログで、「Application ID」と「Version」を設定します。ここで設定した値は「appengine-web.xml」に保存されます。

Google Plugin for EclipseのApp Engine設定を行うダイアログ
Google Plugin for EclipseのApp Engine設定を行うダイアログ

 「Application ID」と「Version」の設定が終わったら、デプロイを実行してみましょう。

 デプロイの実行は、先ほどと同様にパッケージ・エクスプローラーでプロジェクト(PHPonGAE4J)を選択し、右クリックで出てくるメニューから[Google]-[Deploy to App Engine]を選択します。

 このコマンドを実行すると、Eclipseのプロジェクト名、メールアドレス、パスワードを設定するダイアログが開きます。ここではProject(プロジェクト名)の値として「PHPonGAE4J」、Email(メールアドレス)とPassword(パスワード)にはGoogle App Engineのアカウント登録で使用したメールアドレスとパスワードを設定します。

App Engineへのデプロイを実行するダイアログ
App Engineへのデプロイを実行するダイアログ

 必要な値を設定できたら[Deploy]ボタンをクリックしてみましょう。Google App Engineへのデプロイが開始され、デプロイの状況がコンソールに出力されます。「Deployment completed successfully」と出力されればデプロイは完了です。

App Engineへのデプロイの状況を表示するコンソール
App Engineへのデプロイの状況を表示するコンソール

 デプロイが完了したら、Google App Engineでどのように表示されるか確認してみましょう。次のURLにブラウザでアクセスしてください。

http://<登録したApplication ID>.appspot.com/echo.php
App Engine上でのecho.php実行画面
App Engine上でのecho.php実行画面

 ローカルの実行サーバと比べて最初の接続に時間がかかるかもしれませんが、正しく動作していることを確認してください。

Google AppsとGoogle App Engine

 Google App Engineのアカウント登録にはGoogle Accountが必要ですが、Google AccountとしてGoogle Appsのメールアドレスを使っている方も多いと思います。

 Google App EngineのSign inではGoogle Apps用とそれ以外ではURLが異なりますので注意が必要です。

Google Apps用
http://appengine.google.com/a/<YOURDOMAIN.COM>/
それ以外
http://appengine.google.com/

 また、Google AppsではGoogle App EngineのURLを独自ドメインのサブドメインとしてマッピングすることができます。

Google AppsのGoogle App Engine登録画面
Google AppsのGoogle App Engine登録画面

 Google AppsとGoogle App Engineを組み合わせることで、自前のサーバを持つことなく、独自ドメインでWebアプリケーションを簡単に提供できるのはとても魅力的なことだと思います。

まとめ

 駆け足での紹介になってしまいましたがGoogle App Engine for JavaでPHPを動かしてみた感想はいかがだったでしょうか? 既存のPHPのアプリケーションがそのまま動くようになるには、まだまだ道のりが長いですが、可能性は感じていただけたのではないでしょうか?

 Google App Engine for JavaではJavaVMで動作するさまざまなスクリプト系言語を実行することができます。

 JRuby on RailsのコミュニティなどでもGoogle App Engine for Javaで実行させるための取り組みが始まっています。もちろんPHPでの対応も進むことでしょう。

 アカウントさえ取得できてしまえばGoogle App Engine for Javaで動作させることは簡単です。ぜひともいろいろなプログラムを実行させてみてください。

 後編ではGoogle App Engineのデータストアを使用し、PHPスクリプトからデータを保存、取得する方法などについて説明します。

参考資料

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Google App Engine for Javaで動作するスクリプト系言語連載記事一覧
この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 花田 善仁(ハナダ ヨシヒト)

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3948 2009/06/09 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング