PHP 構成をカスタマイズする

PHP とは、動的なウェブページの作成でよく用いられるスクリプト言語です。最新のウェブサイトやウェブアプリケーションの多くは、PHP スクリプトをベースにしています。従って、サイト管理者は PHP スクリプトの実行を制御する方法を理解しておく必要があります。一般に、PHP の挙動は様々な構成設定によって定義されます。これらの設定により、パフォーマンス(たとえばスクリプトで使用できるメモリ量)やセキュリティ(たとえばファイルシステムとサービスへのアクセス)などに関する様々なスクリプト実行の仕様が決まります。管理者は、様々な理由に応じてこれらの設定を調整することができます。

  • スクリプトの誤記述によるメモリリークやサーバハングアップを防ぐため。
  • 悪意あるスクリプトからデータを保護するため。
  • 特定のウェブアプリケーションの要件を満たすため。
  • 自社開発のスクリプトなどをテストするため。
Plesk のカスタム PHP 設定

一般に、PHP 設定は、サーバ全体に対する構成ファイルに定義します。通常、Linux の場合は /etc/php.ini であり、Windows の場合は %WIN%\php.ini です。このファイルはホスティングプロバイダによって管理され、サーバ上でホストされるすべてのウェブサイトの PHP 構成が定義されています。Plesk 10.4 以降では、顧客パネルで PHP 設定をホスティングプランや契約ごとに調整できます。さらに、(許可される場合)顧客は、自らのウェブサイトとサブドメインに事前設定されている PHP 設定を個別に調整することができます。PHP 設定の階層は以下の図のようになっています。

PHP 設定の階層

特定のサービスプラン、アドオンプラン、または契約のプロパティで、カスタム PHP 構成を設定することができます([PHP 設定]タブ)。 上位の PHP 設定は下位に対する事前設定値となり、下位の設定によって上書きされます。 例えば、サービスプランに何らかの PHP 制限を意図的に適用してから、この制限を解除するアドオンプランを顧客に提供することができます。アドオンプランの PHP 設定は、メインサービスプランに定義された設定よりも優先されます。
適切なパーミッションが顧客に付与されている場合、顧客は契約内の各ウェブサイト(またはサブドメイン)に対して固有の PHP 構成を指定することができます。

PHP 設定のグループ

便宜上、Plesk のすべての PHP 設定は以下の 2 つのグループに分類されています。

  • パフォーマンス設定:
    これらの設定は、スクリプトによってシステムリソースがどのように処理されるのかを定義します。例えば、memory_limit パラメータを使用してスクリプト用のメモリ量を制限し、メモリリークを防ぐことができます。あるいは、max_execution_time を使用してスクリプトの最大許容実行時間を制限し、スクリプトによるサーバの拘束を防ぐことができます。
  • 共通設定:
    このグループには、他の一般的な PHP 設定が含まれます。主な設定に、セキュリティ設定(例:PHP セーフモードのオン/オフ切り替え、グローバル変数の登録パーミッション)、エラー報告設定(例:エラーログディレクティブ)などがあります。

重要:Plesk for Windows または Plesk for Linux を使用しており、PHP を Apache モジュールとして実行していない場合、顧客は一部の PHP 設定をパーミッションに関わらず上書きすることができます。顧客は、スクリプトで ini_set() 関数を使用することにより、 memory_limit および max_execution_time の値や、PHP によって設定が許可される追加ディレクティブ(PHP_INI_ALL ディレクティブ。詳しくは http://php.net/manual/en/ini.list.php を参照)のパラメータの値を変更することができます。

特定のパラメータがパフォーマンス設定または共通設定で見つからない場合は、ホスティングプロバイダに問い合わせてください。

PHP パラメータのデフォルト値

PHP 設定の各パラメータの値を設定するには、プリセットから値を選択するか、カスタム値を入力するか、あるいはデフォルト値のまま使用します。デフォルト値の場合は、サーバ全体に対する PHP 構成からパラメータ値が取得されます。 唯一の例外はアドオンプランであり、アドオンの[PHP 設定]タブで「デフォルト」に設定されている値では、メインサービスプランのパラメータ値が保持されます。

顧客に対して PHP 設定の変更を許可する

顧客に対して、ウェブサイトおよびサブドメイン単位で独自の PHP 構成を設定し、契約の PHP 設定を上書きすることを許可することができます。これを行うには、特定のサービスプランまたは契約の[パーミッション]タブで、以下のパーミッションを使用する必要があります。

  • ホスティングパフォーマンス設定の管理:
    その他の設定の管理とともに、このパーミッションは顧客に「パーミッション設定」グループの PHP 設定へのアクセス権限を付与します。
  • 共通 PHP 設定の管理:
    これを付与すると、顧客は「共通設定」グループの PHP 設定を調整できるようになります。

プラン(契約)に対してこれらのパーミッションのオン/オフを切り替えることができるのは、「ホスティング設定管理」パーミッションが付与されている場合のみです。

PHP 設定を調整するパーミッションが顧客に付与されていない場合でも、管理者はいつでもこれらのウェブサイト(サブドメイン)単位で PHP 構成を変更することができます。これには、リセラーパネルから当該ホスティングアカウントを開き、[PHP 設定]タブで当該ウェブサイト(サブドメイン)の設定に変更を適用します。