PHP

こちらのページでは、GitHubリポジトリから弊社アプリケーションホスティングに以下PHPアプリケーションをデプロイ、セットアップする方法をご紹介します。

前提条件

  • 弊社クイックスタートテンプレートは、GitHubに保存・管理されているため、GitHubアカウントが必要です。
  • アプリケーションのデプロイには、MyKinstaアカウントが必要になります。

PHP

  1. GitHubにログイン後、「Kinsta – Hello World – PHP」テンプレートから、新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  3. PHPリポジトリと「データセンターの所在地」を選択します。その他の設定はデフォルトのままで、「続行」をクリックします。
  4. 最終確認」画面で「デプロイする」をクリックします。

デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、composer.jsonファイルで定義された依存関係も自動インストールされます。デプロイ完了後、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Kinstaのウェルカムページが表示されます。

PHPのデプロイ完了後に表示されるKinstaのウェルカムページ
PHPのデプロイ完了後に表示されるKinstaのウェルカムページ

PHPアプリのデプロイ方法について動画での解説もご用意しています

ウェブサーバーのセットアップ

弊社では、通常の方法でプロジェクトのメインディレクトリから、index.phpファイルを提供するApacheウェブサーバーを自動設定します。デフォルトのインデックスページとして、プロジェクトフォルダにindex.phpファイルを作成してください。

Jigsaw

弊社アプリケーションホスティングを使用して、GitHubリポジトリからJigsawで静的サイトをセットアップする方法の一例をご紹介します。

Jigsawは静的サイトフレームワークです。Bladeテンプレートを使ってページレイアウトを作成し、Markdownでテンプレート内にコンテンツを構築するため、高度なコーディングの知識なしで、シンプルな静的サイトを作成することができます。詳細はJigsawの公式サイトをご覧ください。

  1. GitHubにログイン後、「Kinsta – Jigsaw Starter」テンプレートから新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  3. Jigsawリポジトリと「データセンターの所在地」を選択します。その他の設定はデフォルトのままで、「続行」をクリックします。
  4. 最終確認」画面では、デプロイ前にBuildpackを追加する必要があるため、「後でデプロイする」をクリックします。
  5. アプリケーションがCSS/JSファイルをビルドできるよう、Node.jsPHPの2つのBuildpackを追加します。「設定」>「Buildpackを追加」をクリックし、「Node.js」>「Buildpackを追加」を選択します。PHPでも同様の操作を繰り返してください。
  6. デプロイ」>「今すぐデプロイ」>(対象のブランチ)>「アプリケーションをデプロイ」をクリックします。

JigsawはLaravelをベースにしており、通常のPHPベースのアプリケーションとみなすことができます。デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、composer.jsonファイルで定義された依存関係も自動インストールされます。デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Jigsawのデフォルトページが表示されます。

インストール完了後に表示されるJigsawのデフォルトページ
インストール完了後に表示されるJigsawのデフォルトページ

Buildpack

ほとんどの場合、アプリケーションにCSS/JSファイルをビルドさせるため、以下2つのBuildpackを追加する必要があります。

  • Node.js
  • PHP

ウェブサーバーのセットアップ

startコマンド

アプリケーションをデプロイすると、startコマンドとして自動的にnpm startを持つウェブプロセスが検出されます。startコマンドは、必要に応じて「プロセス」画面で変更可能です。

Laravel

GitHubリポジトリから弊社アプリケーションホスティングを利用して、Laravelアプリケーションをデプロイ、セットアップする方法の一例をご紹介します。

  1. GitHubにログイン後、「Kinsta – Hello World – Laravel」テンプレートから新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. Laravelでは、APP_KEY環境変数を設定する必要があります。お客様ご自身でアプリキーをローカルに生成するか、オンラインLaravelキージェネレーターで作成可能です。
  3. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  4. Laravelリポジトリと「データセンターの所在地」を選択します。「環境変数」で「キー1」にAPP_KEYと入力、「値1」にステップ2で生成したキーを貼り付けて、「ランタイムで利用可」と「ビルドプロセスで利用可」を選択してください。
  5. その他の設定はデフォルトのままで、各ステップで「続行」をクリックします。「最終確認」画面では、デプロイ前にBuildpackを追加する必要があるため、「後でデプロイする」をクリックしてください。
  6. アプリケーションがCSS/JSファイルをビルドできるよう、Node.jsPHPの2つのBuildpackを追加します。「設定」>「Buildpackを追加」をクリックし、「Node.js」>「Buildpackを追加」を選択します。PHPでも同様の操作を繰り返してください。
  7. デプロイ」>「今すぐデプロイ」>(対象のブランチ)>「アプリケーションをデプロイ」をクリックします。

Laravelは、通常のPHPベースのアプリケーションとみなすことができます。デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、composer.jsonファイルで定義された依存関係も自動インストールされます。デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Kinstaのウェルカムページが表示されます。

Laravelのデプロイ完了後に表示されるKinstaのウェルカムページ
Laravelのデプロイ完了後に表示されるKinstaのウェルカムページ

Laravelアプリのデプロイ方法について動画での解説もご用意しています

データベースの接続

アプリケーションをデータベースに接続する場合、まずはアプリケーションと同じデータセンターにデータベースを作成します。

  1. データベースを追加します。
  2. 内部接続を追加し、「環境変数を追加」にチェックを入れて、データベースをアプリケーションに接続します。これでデータベースから環境変数が自動入力されます。
  3. Laravelが使用する変数名(キー)の一部は、MyKinstaで自動生成されたものと異なります。必要に応じてLaravelのdatabase.phpファイルで定義されているものと一致するよう、変数キーを編集してください。Laravelがサポートするデータベースタイプに対応する変数名(キー)は以下を参照してください。

環境変数

MySQLとPostgreSQL

自動生成キーLaravelキー
DB_HOSTDB_HOST
DB_PORTDB_PORT
DB_NAMEDB_DATABASE
DB_USERDB_USERNAME
DB_PASSWORDDB_PASSWORD
DB_CONNECTION_URLDB_URL

Redis

自動生成キーLaravel キー
DB_HOSTREDIS_HOST
DB_PORTREDIS_PORT
DB_NAMEREDIS_DB
DB_USERREDIS_USERNAME
DB_PASSWORDREDIS_PASSWORD
DB_CONNECTION_URLREDIS_URL

LaravelのAPP_KEY

Laravelでは、環境変数APP_KEYの設定が必要です(設定しない場合は、Laravelの500エラーページが表示されます)。このキーは、お客様ご自身でローカルに生成するか、オンラインLaravelキージェネレーターで作成可能です。キーの取得後、環境変数として追加します。

Buildpack

ほとんどの場合、アプリケーションにCSS/JSファイルをビルドさせるため、以下2つのBuildpackを追加する必要があります。

  • Node.js
  • PHP

アプリケーションの主要言語を含むBuildpackは、Buildpack一覧の最後になければなりません。この例では、PHPが主要言語であるため、PHPのBuildpackを一覧の最後に追加してください。

ウェブサーバーのセットアップ

startコマンド

デフォルトのウェブプロセスは、heroku-php-apache2です。この例では、Laravelのpublic/index.phpにすべてのリクエストをリルートする.htaccessファイルが含まれています。startコマンドは、必要に応じてアプリケーションの追加時(プロセスのセットアップ)、またはデプロイ後のアプリケーションの「プロセス」画面でコマンドを変更可能です。以下を使用してください。

heroku-php-apache2 /public

または

php artisan serve --host 0.0.0.0 --port 8080

Leaf

GitHubリポジトリから弊社アプリケーションホスティングを利用してLeaf PHPアプリケーションをデプロイ、セットアップする方法の一例をご紹介します。

Leafはスリムで軽量なPHPフレームワークで、開発者による使いやすさや質の高いコード記述に重点を置いています。詳細はLeaf PHPの公式サイトをご覧ください。

  1. GitHubにログイン後、「Kinsta – Hello World – Leaf PHP」テンプレートから新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  3. Leaf PHPのリポジトリと「データセンターの所在地」を選択します。その他の設定はデフォルトのままで、「続行」をクリックします。
  4. 最終確認」画面で「デプロイする」をクリックします。

デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、composer.jsonファイルで定義された依存関係も自動インストールされます。デプロイ完了後、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Kinstaのウェルカムページが表示されます。

Leaf PHPのデプロイ完了後に表示されるKinstaのウェルカムページ
Leaf PHPのデプロイ完了後に表示されるKinstaのウェルカムページ

Leaf PHPアプリのデプロイ方法について動画での解説もご用意しています

ウェブサーバーのセットアップ

ポート

PORT環境変数は自動的に設定されるため、お客様ご自身で定義したりアプリケーションにハードコーディングで記述したりする必要はありません

startコマンド

アプリケーションのデプロイに際し、heroku-php-apache2を実行するウェブプロセスが自動生成されます。

デプロイメントライフサイクル

デプロイメントを開始すると(アプリケーションの作成、またはコミットの失敗による再デプロイ)、composer install コマンドが実行されます。

Statamic

GitHubリポジトリから弊社アプリケーションホスティングを利用して、Statamicアプリケーションをデプロイ、セットアップする方法の一例をご紹介します。

StatamicはフラットファイルCMSであり、すべてのデータがGitリポジトリに保存されます。サイトの構築と保守管理を考慮し、コードをMyKinstaに反映する前に、Statamicをローカル環境にインストールすることをお勧めします。それから「super user」(スーパーユーザー)アカウントを作成し、すべての変更内容をコミットして、リポジトリにプッシュしてください。

  1. GitHubにログイン後、「Kinsta – Statamic Boilerplate」テンプレートから新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. StatamicはLaravelをベースにしているため、APP_KEY環境変数を設定する必要があります。お客様ご自身でアプリキーをローカルに生成するか、オンラインLaravelキージェネレーターで作成可能です。
  3. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  4. Statamicリポジトリと「データセンターの所在地」を選択します。「環境設定」の設定は以下に従ってください。
    1. キー1」にAPP_KEYと入力、「値1」にステップ2で生成したキーを貼り付ける
    2. 追加項目を増やす」をクリックし、「キー2」にAPP_KINSTA、「値2」にtrueを入力
    3. ランタイムで利用可」と「ビルドプロセスで利用可」を選択
  5. その他の設定はデフォルトのままで、各ステップで「続行」をクリックします。「最終確認」画面で「後でデプロイする」をクリックし、デプロイ前に必要なBuildpackを追加します。
  6. アプリケーションがCSS/JSファイルをビルドできるよう、Node.jsPHPの2つのBuildpackを追加します。「設定」>「Buildpackを追加」をクリックし、「Node.js」>「Buildpackを追加」を選択します。PHPでも同様の操作を繰り返してください。
  7. デプロイ」>「今すぐデプロイ」>(対象のブランチ)>「アプリケーションをデプロイ」をクリックします。

JigsawはLaravelをベースにしており、通常のPHPベースのアプリケーションとみなすことができます。デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、composer.jsonファイルで定義された依存関係も自動インストールされます。デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Statamicのウェルカムページが表示されます。

インストール完了後に表示されるStatamicのウェルカムページ
インストール完了後に表示されるStatamicのウェルカムページ

Statamicアプリのデプロイ方法について動画での解説もご用意しています

環境変数

Stamicでは、以下の環境変数の設定が必要です。

Buildpack

ほとんどの場合、アプリケーションにCSS/JSファイルをビルドさせるため、以下2つのBuildpackを追加する必要があります。

  • Node.js
  • PHP

アプリケーションの主要言語を含むBuildpackは、Buildpack一覧の最後になければなりません。この例では、PHPが主要言語であるため、PHPのBuildpackを一覧の最後に追加してください。

ウェブサーバーのセットアップ

startコマンド

デフォルトのウェブプロセスはheroku-php-apache2 public/です。必要であれば、アプリケーションの追加時(プロセスのセットアップ)、またはデプロイ後のアプリケーションの「プロセス」画面でコマンドを変更可能です。

メール送信用のPHPアプリケーション

弊社アプリケーションホスティングを利用して、GitHubリポジトリからSendGrid経由でメールを送信するPHPアプリケーションをデプロイ、セットアップする方法の一例をご紹介します。

弊社では、サーバーからのアウトバウンドのメールを標準でサポートしていません。SendGridまたはMailchimpなどのようなメール送信サービスを経由してメールを送信すると、トランザクションやキャンペーンメールのより高い柔軟性と成功率が期待できます。

  1. GitHubにログイン後、「Kinsta – Hello World – Email Sending With PHP」テンプレートから新規リポジトリを作成します(「Use this template」>「Create a new repository」)。
  2. MyKinstaで、「アプリケーション」>「アプリケーションを追加」>「GitHub」を選択し、「Gitサービスの接続」ウィンドウで「Gitサービスを接続する」をクリックして、GitHubアカウントにログインします。
  3. Email PHPリポジトリと「データセンターの所在地」を選択します。「環境設定」に以下を追加します。
    • SENDGRID_API_KEY:SendGridからのAPIキー
    • TEST_EMAIL_TO_ADDRESS:テストメールの送信先アドレス
    • TEST_EMAIL_FROM_ADDRESS:テストメールの送信元アドレス
    • TEST_ENDPOINT:テストメールを送信するトリガーとして使用するエンドポイント(最低8文字以上の無作為な文字列を使用してください)
  4. その他の設定はデフォルトのままで、各ステップで「続行」をクリックし、「最終確認」画面で「デプロイする」をクリックします。

デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションの URLには、Hello Worldページが表示されます。

メール送信用PHPのインストール完了後に表示されるHello Worldページ
メール送信用PHPのインストール完了後に表示されるHello Worldページ

メール送信のトリガー

シンプルなindex.phpのエントリポイントを通して、2つのエンドポイントが公開されます。

  • /:Hello Worldメッセージを返す簡易ページ
  • /${TEST_ENDPOINT}:テストメールをトリガーするページ

メールをトリガーするには、「デプロイメント」画面で確認できるデプロイのURLにテストエンドポイントを追加し、そのページにアクセスしてください。例えば、TEST_ENDPOINTo34nifnodhni4ofに設定され、最近のデプロイが「https://example.kinsta.app」にある場合は、ブラウザで「https://example.kinsta.app/o34nifnodhni4of」からテストメールを起動することができます。

この記事は役に立ちましたか?