停止またはクラッシュ
PHP プロセスが停止またはクラッシュした可能性があります。この状況を定期的に検出するための適切なスクリプトが設定されていない場合は、ログ (通常は /var/log/httpd/ または /var/log/nginx/ にあります) を表示することによってのみ関連情報を取得できます。明らかなエラー メッセージが見つからない場合は、次のコマンドを使用して、実行中の PHP プロセスがあるかどうかを確認することもできます。
ps aux | grep php
このコマンドは、現在実行中のすべての PHP プロセスを出力します。出力がない場合は、システム上で実行中の PHP プロセスが存在しないことを意味します。
メモリ制限
システム内に大規模な PHP アプリケーションがある場合、PHP プロセスがメモリ制限に達し、プロセスが強制終了される可能性があります。 。この問題を解決するには、PHP 構成ファイルを変更してメモリ制限を増やす必要があります。
memory_limit = 256M
これにより、メモリ制限が 256MB に設定されます。もちろん、サーバーのスペースが比較的豊富な場合は、この値をより大きく変更することもできます。
PHP バージョンの問題
PHP バージョンの問題にも注意する必要があります。一部のサーバーには複数のバージョンの PHP が同時にインストールされている場合がありますが、実行されているのはそのうちの 1 つだけです。したがって、現在実行中の PHP バージョンを確認する必要があります。これは、次のコマンドで確認できます。
php -v
現在実行中の PHP バージョンが予想されるバージョンと一致しない場合は、次のコマンドを使用して、現在の PHP バージョン:
sudo a2dismod php7.1 sudo a2enmod php7.2 sudo service apache2 restart
上記のコマンドは、PHP バージョン 7.1 をアンインストールし、PHP バージョン 7.2 を有効にして、最後に Apache を再起動します。
PHP 拡張機能の問題
もう 1 つの一般的な問題は、PHP アプリケーションに特定の PHP 拡張機能が必要であるにもかかわらず、システムにそれらがインストールされていないことです。この場合、次のコマンドを使用して不足している拡張機能をインストールできます:
sudo apt-get install php7.x-common php7.x-curl php7.x-gd php7.x-json php7.x-mbstring php7.x-mysql php7.x-xml php7.x-zip
上記のコマンドの x を現在の PHP バージョンに変更する必要があります。このコマンドは、PHP アプリケーションの実行に必要な一般的な PHP 拡張機能をインストールします。インストール後は必ず Web サーバーを再起動してください。
以上がLinuxがphpプロセスをクエリできない理由は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。