Skip to content
ヘルプセンター

DirectAdmin で PHP メモリ制限を増やす方法

DirectAdmin で管理されている VPS または専用サーバーで PHP メモリ制限を調整する方法を学びます。

PHP スクリプトは開発が早く、広く使用されていますが、重要な欠点もあります。不適切に作成されたスクリプトは大量のサーバー メモリを消費する可能性があり、同じマシン上で実行されている他のサービスに影響を与える可能性があります。

これが、PHP が memory_limit 設定を通じて各スクリプトのメモリ制限を定義する理由です。

PHP の memory_limit 設定とは何ですか?

memory_limit 値はスクリプトごとに適用されます。言い換えれば、これは 1 つの PHP スクリプトが消費できるサーバー メモリの最大量です。

公式の PHP ドキュメントでは、これについて次のように説明されています。これは、スクリプトが消費できるメモリの最大量をバイト単位で設定し、不適切に作成されたスクリプトによって利用可能なサーバー メモリがすべて使い果たされるのを防ぐのに役立ちます。

たとえば、制限が 128M に設定されている場合、7 つのスクリプトはそれぞれ 80M を使用できます。 これらは合計で 128 MB をはるかに超えて消費しますが、制限に違反しています。しかし、あるスクリプトで突然 130M が必要になった場合、

のようなエラーが発生して失敗します。

致命的エラー: 許可されたメモリ サイズ x バイトが使い果たされました (x バイトを割り当てようとしました)

または:

PHP 致命的エラー: メモリ不足 (x が割り当てられました) (x バイトを割り当てようとしました)

DirectAdmin で PHP メモリ制限を増やす方法

最初の質問は常に、メモリ使用量が妥当かどうかです。そうでない場合、最も賢明な修正は、単に制限を引き上げるのではなく、スクリプト自体を修正することかもしれません。ワークロードが正当であると確信できる場合は、VPS またはサーバー構成を調整できます。

次の基本的な手順に従います:

ステップ 1: 使用中の PHP 構成ファイルを見つけます。簡単な確認方法は次のとおりです:

/usr/local/bin/PHP --ini | grep 'ロードされた設定ファイル'

デフォルトの PHP CLI バージョンを使用している場合、ファイルは通常、

にあります。

/usr/local/lib/PHP.ini

ステップ 2: memory_limit 行を編集し、目的の値を設定します。存在しない場合は追加します:

memory_limit = 128M

アプリケーションが実際に必要とする値に値を調整し、ファイルを保存します。 SSH セッションから nano などのエディターを使用できます。

ステップ 3: Apache または関連する PHP サービスを再起動して、変更を有効にします。

その他の関連する PHP 設定

POST サイズも増やす必要がある場合は、

を確認してください。

post_max_size = 8M

より大きなファイルのアップロードを許可する必要がある場合は、 レビュー:

upload_max_filesize = 2M

結論

PHP のメモリ制限には正当な理由があります。これがないと、不適切に書かれたスクリプトがすべてのサーバー リソースを消費し、重大な問題を引き起こす可能性があります。ただし、環境がより強力で、アプリケーションが本当により多くのメモリを必要とする場合は、適切な構成ファイルを慎重に編集することで、スクリプトあたりの最大量を増やすことができます。