予約システムをGoogle App Engine(GAE)での利用

Google App Engine for PHPで予約システムを利用するには、パッケージDXまたはパッケージEXを導入する必要があります。

メールサポート このページで紹介している機能や操作方法などについて、ご質問がありましたら下記のボタンよりお気軽にご質問ください。 このページの機能について質問する

Google App Engine for PHPで予約システムの設定と設置手順

予約スケジュールや予約ユーザーなどの情報を保存するためにMySQLデータベースの「Goolge Cloud SQL」と、 設定情報をファイルに保存すため「Google Cloud Storage(App Engine無料枠用)」のサービスを利用します。
Google Cloud Platformに未登録のお客様は、登録後に下記の手続きを行ってください。

新しいプロジェクトを追加

App Engine for PHP

Google Cloud Platformで予約システムを設置するために「プロジェクト」ボタンを押してください。

  • 赤枠の「プロジェクト名」には、任意のプロジェクト名を入力してください。
  • 赤枠の「App Engineの場所」には、任意の地域を選択してください。

App Engineのサービスページに移動

App Engine for PHPのページ移動

新しいプロジェクトを追加したら次に、Google Cloud Platform内の プロジェクト一覧から、作成したプロジェクト名をクリックして「ダッシュボード」ページに移動してください。
画面左上の「ツールとサービ」をクリックして、コンピュートの項目内にある「App Engine」を選択してください。

Google App Engine for PHPの設定 手順1

App Engine for PHPの設定方法1

「App Engine」に移動すると「今すぐApp Engineを試す」をクリックしてください。

Google App Engine for PHPの設定 手順2

App Engine for PHPの設定方法2

このページで「言語を選択します」の項目で「PHP」を選択して手続きを終えてください。

Google Cloud SQLの設定

Cloud SQLの設定

プロジェクト内の左上にある「ツールとサービ」をクリックして、ストレージ内にある「SQL」を選択してください。
「SQL」ページより「インスタンス作成」ボタンを押すと左のようなページが表示さますので、「Cloud SQL の第1世代」を選択してインスタンスの作成画面へ移動してください。

Google Cloud SQLのインスタンスを追加

Cloud SQLのインスタンスを追加
  • 「インスタンス名」には、任意の名前を入力してください。
  • 「地域」は、App Engineの地域と同一の地域を選択してください。App Engineの地域がわからない場合は、App Engineのページで地域を確認することができます。
    Google App Engine(GAE)でプロジェクト作成時の地域が「us-central」である場合は、SQLのインスタンスの「地域」も同様に「us-central」としてください。
  • 「階層」では、任意のSQLインスタンスのスペックを選択してください。階層が低いほど、コストを抑えることができます。
  • 「希望する場所」では、「App Engineアプリに準拠」を選択してGoogle App EngineのプロジェクトIDを入力してください。

Google Cloud SQLにデータベースを追加

Cloud SQLにデータベースを登録

Google Cloud SQLで作成したインスタンスを選択して、ページ上部にある「データベース」を選択して「新しいデータベース」をクリックしてください。
ここで作成したデータベース名を予約システム内で利用するデータベースとなります。

  • 「名前」には、任意のデータベース名を入力してください。
  • 「文字セット」には、utf8を選択します。
  • 「照合」には、utf8_general_ciを選択します。

Google Cloud SQLのホスト名の確認

Cloud SQL内のホスト名を確認する

Google Cloud SQLで作成したインスタンスを選択すると「概要」内の「Instance connection name」の値が、パッケージDXのデータベースで利用するホスト名となります。
Google Cloud SQLのホスト名は、「プロジェクトID:SQLインスタンス名」となります。

Goolge App EngineとGoogle Cloud Storageの連携

Cloud Storageの連携

Google Cloud Pratformからでは、App Engine内で利用する「Google Cloud Storage」の連携の設定が行えませんので、 「Goolge App Engine」のページから設定を行ってください。 「Goolge App Engine」内にある「プロジェクト名」を選択すると、そのプロジェクトの管理ページが表示されます。
ページの左サイドにある「Application Settings」をクリックして設定ページを開いてください。
そのページの下方にある「Cloud Integration」項目内の「Create」ボタンを押して「Google Cloud Storage」との連携を有効にします。

以上で、Google Cloud Pratformでの設定作業は完了となります。 引き続き、お客様がご利用のパソコン側の設定を行ってください。

パッケージDXをGoogle App Engineに転送するパソコン側の設定

利用するパソコンのOSがWindowsの場合は、「the Python web site」よりPython 2.7.Xをインストールしてください。 MacOSの場合でもPythonのバージョンが2.7以下の場合は、Windowsと同様にインストールしてください。
パッケージDXや、ホームページ用のHTMLファイルなどをGoogle App Engineに転送するために「Google App Engine SDK for PHP」をご利用のパソコンにインストールしてください。
MacOSユーザーは、GoogleAppEngineLauncher.appで簡単にGoogle App Engineにファイルを転送することができますが、Widowsユーザーは、プロンプトから行う必要があります。
プロンプトからファイルの転送のチュートリアルと詳細は、「Hello, World! in 5 minutes」のページをご確認ください。 ここでは、GoogleAppEngineLauncher.appとapp.yamlの設定について説明いたします。

MacOSからGoogleAppEngineLauncher.appで Google App Engineのプロジェクトを設定

MacOSからGoogleAppEngineLauncher.appでApp Engineのプロジェクトを設定

GoogleAppEngineLauncher.appの File New ApplicationでNew Application Settingsページを開いてください。

  • Application IDには、Google App Engineで作成してプロジェクトIDを設定します。
  • Runtimeでは、PHPを選択してください。
  • 上記の情報を設定したら「Create」ボタンを押してプロジェクトを読み込んでください。
GoogleAppEngineLauncher.appが起動できない場合は、 Pythonがインスタンスされていないか、 インストール時になんらかの設定ミスがあったと考えられます。

Google App Engineにファイルを転送するには

App Engineにファイルを転送

上記の「MacOSからGoogleAppEngineLauncher.appで Google App Engineのプロジェクトを設定」で設定に成功したらサンプルイメージのような状態になり 追加したプロジェクトが表示されます。
プロジェクト内のファイルをGoogle App Engineに転送するには、プロジェクトを選択して「Deploy」ボタンを押してくファイルを転送してください。

app.yamlの設定とパッケージDXの設置場所

					
application: YOUR_PROJECT_ID
version: 1
runtime: php55
api_version: 1
threadsafe: yes

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: (.*)/
  static_files: public_html\1/index.html
  upload: public_html(.*)/index.html

- url: /(.+\.(gif|png|jpg|html|js|css|csv))$
  static_files: public_html/\1
  upload: public_html/(.+\.(gif|png|jpg|html|js|css|csv))$
  
- url: /(.+\.php)$
  script: public_html/\1					
					
					

app.yamlは、JAVAサーブレットで例えるとweb.xmlに該当する機能になります。
app.yamlは、プロジェクトIDのディレクトリ内に置くようにしてください。
プロジェット内の「public_html」ディレクトリを作成して、その中にサイト上で表示したい、HTMLページやパッケージDXを置くようにしてください。 左の例では、「public_html」ディレクトリ内のgif、png、jpg、html、js、css、csvを静的ファイルとしてアクセスすることができるようになっています。
また、phpファイルは、スクリプト(動的ファイル)として実行するように設定しています。
サンプルapp.yamlの1行目の「YOUR_PROJECT_ID」には、Google App Engineで作成したプロジェクトIDに変更してください。

パッケージDXをGoogle App Engineで利用するための設定

					
3行目 define('GOOGLE_APP_ENGINE', true);

5行目 use \google\appengine\api\mail\Message;
					
					

予約システムをGoogle App Engineで利用するために「GoogleAppEngine.php」ファイルの一部の値を変更する必要があります。
「GoogleAppEngine.php」ファイルは、「/calendar_dx/libraries/」ディレクトリ内にあります。
そのファイルをテキストファイルで開き、3行目と5行目付近にあるコードを左のサンプルコードのように編集してください。

メールサポート

このページで紹介している機能や操作方法などについて、ご質問がありましたら下記のボタンよりお気軽にご質問ください。 このページの機能について質問する

その他の関連項目

パッケージDX PHP環境のページに戻る