PHP は、さまざまなオペレーティング システムと Web サーバーをサポートする、広く使用されているサーバー側プログラミング言語です。 PHP でリモート接続に SSH (Secure Shell) プロトコルを使用すると、「PHP 致命的なエラー: 未定義関数 ssh2_exec() の呼び出し」というエラー メッセージが表示される場合があります。この記事では、このエラーを解決する方法について説明します。
1. ssh2 拡張機能をインストールする
まず、ssh2 拡張機能をインストールする必要があります。この拡張機能は、PHP が SSH サーバーと対話するための機能を提供します。次のコマンドでインストールできます。
Ubuntu および Debian では、次のコマンドを使用します。
sudo apt-get install libssh2-1-dev libssh2-php
CentOS および Red Hat Enterprise Linux では、次のコマンドを使用します。
sudo yum install gcc php-devel php-pear libssh2 libssh2-devel
sudo pecl install ssh2
インストールが完了したら、ssh2 拡張子を php.ini ファイルに追加する必要があります。次のコマンドを使用して php.ini ファイルの場所を見つけることができます:
php -i | grep 'ロードされた設定ファイル'
次に、php.ini ファイルを開いて次のコードを追加します。最後の内容:
extension=ssh2.so
ファイルを保存して閉じます。
3. Web サーバーを再起動します
上記の手順を完了した後、新しい設定を有効にするために Web サーバーを再起動する必要があります。 Ubuntu および Debian では、次のコマンドを使用して Apache サーバーを再起動します。
sudo service apache2 restart
CentOS および Red Hat Enterprise Linux では、次のコマンドを使用して Apache サーバーを再起動します。
sudo service httpd restart4. ssh2 拡張機能のテストssh2 拡張機能が正しくインストールされているかどうかをテストするには、単純な PHP スクリプトを作成できます:
SSH プロトコルを使用してリモート接続する場合、「PHP 致命的なエラー: 未定義関数 ssh2_exec() の呼び出し」というエラー メッセージが表示される場合は、ssh2 拡張機能をインストールし、ウェブサーバーです。この記事で説明されている手順に従って、ssh2 拡張機能が PHP アプリケーションで適切に動作していることを確認してください。
以上がPHP 致命的エラーの解決策: 未定義関数 ssh2_exec() の呼び出しの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。