既存のオンプレミスPHPアプリケーションまたはオンプレミスマシンで作成したPHPアプリケーションのNGINX設定を含むZIPパッケージを作成できます。 ZIPパッケージを使用して、Serverless App Engine (SAE) でアプリケーションをデプロイできます。 このトピックでは、PHPアプリケーション用のZIPパッケージを作成する方法と、ZIPパッケージを使用してPHPアプリケーションをデプロイする方法について説明します。 このトピックでは、ZIPパッケージのディレクトリ構造といくつかのサンプル構成についても説明します。
ZIPパッケージのディレクトリ構造
ZIPディレクトリ | Runtimeディレクトリ | 説明 |
. /nginx | /home/admin/app/nginx/ | NGINX設定ファイルが格納されているディレクトリ。 |
. /nginx/*.conf | /home/admin/app/nginx/*.conf | NGINXサーバーの構成が格納されているディレクトリ。 |
. /php | /home/admin/app/php/ | PHPが保存されているディレクトリ。 |
アプリケーションをデプロイする場合は、デモアプリケーションパッケージに基づいてアプリケーションのZIPパッケージを作成し、そのパッケージをSAEにアップロードできます。 この例では、デモアプリケーションパッケージが使用されています。 詳細については、「hello-sae-php.zip」をご参照ください。 次のサンプルコードは、ZIPパッケージが解凍された後のディレクトリ構造の例を示しています。
.
â ─ ─ nginx
│ ├─ ─ default.conf
│ ├─ ─ fastcgi_params
root.dir
â ─ ─ php
│ ├─ ─ index.php
│ õ ─ ─ phpinfo.php
NGINXを使用しない場合は、アプリケーションのスムーズな起動を保証するために、デモアプリケーションパッケージにNGINX設定を保持することを推奨します。
ステップ1: PHPアプリケーション用のZIPパッケージを作成する
コマンドを実行するか、ファイル圧縮ツールを使用して. /phpと. /nginxディレクトリをZIPパッケージに挿入します。 次のセクションでは、コマンドを実行してZIPパッケージを作成する方法について説明します。
次のコマンドを実行して、デモアプリケーションパッケージをダウンロードします。
wget https://sae-demo-cn-shenzhen.oss-cn-shenzhen.aliyuncs.com/demo/1.0/hello-sae-php.zip
次のコマンドを実行して、パッケージを解凍します。
hello-sae-php.zip
を解凍する
次のコマンドを順番に実行して、アプリケーションパッケージにカスタムコードを追加します。 この例では、デモアプリケーションパッケージが使用されています。
echo '<?php' > php/index.php
echo 'echo "Hello my first SAE application";' >> php/index.php
zipコマンドを実行してZIPパッケージを作成します。
zip -r sae.demo.zip nginx php
ステップ2: PHPアプリケーションのデプロイ
手順
詳細については、「SAEコンソールでZIPパッケージを使用したPHPアプリケーションのデプロイ」をご参照ください。
アプリケーションの追加設定
PHPアプリケーションがSAEにデプロイされた後、リアルタイムログを表示してアプリケーションのトラブルシューティングを行うことができます。 Server Load Balancer (SLB) インスタンスをアプリケーションにバインドしてから、インターネット経由でアプリケーションにアクセスすることもできます。 次の表に、アプリケーションのサンプル設定を示します。
項目 | 説明 |
HTTPおよびNGINXのデフォルトポート | ポート番号を |
エラーログ | 標準出力をリアルタイムログに含めます。 |
アクセスログ | デフォルトでは、アクセスログは表示されません。 アクセスログの取得方法については、「NGINX logs: standard output」をご参照ください。 |