2012-03-19 9 views
0

私は、PHPを使用してリモート専用サーバーを再起動する方法を検討しています。 Googleで研究をしているうちに、私はPythonシェルクライアントについて読んだ。 PHPに似たものがありますか?PHPスクリプトまたはPHPシェルクライアントを使用してリモート専用サーバーを再起動するにはどうすればいいですか?

shellコマンドを使用してリモートサーバを再起動するためにphpを使用できますか?そうするために何が必要ですか?

+0

:あなたは、単に次のコードを使用しますダウンロードした後https://github.com/merlinthemagic/MTS

を? – Tadeck

+0

はい、またはリモートシェルサーバーに接続し、rebootコマンドを実行します。 – alhoseany

答えて

0

私はあなたがWebベースのシェルをPHPで実装したいと思っています。 その場合は、あなたが任意のシェルコマンドを実行することができ、これらのスクリプトを使用して、このhttp://ajaxshell.sourceforge.net/ このhttp://sourceforge.net/projects/ajaxshell/

で見ることができます。 しかし、2つのことを覚えています。 1.パスワードはWebシェルアプリケーションを保護します 2.シェルはapacheユーザーとしてコマンドを実行します。サーバを再起動するには、apacheにroot権限が必要な場合があります。ルートとしてのApacheの実行は、通常、良い方法ではないと考えられています。

0

exec()、passthru()などを使用するとおそらくできます。私はよく分かりません。リブート特権を与える必要があります(私は正確にはわかりませんが、ルート...)あなたのPHPユーザーに。

あなたがしたいことは、あなたのサーバーを再起動するWebページを呼び出すことですか、それはもっと複雑なことでしょうか?

0

PHP用のシェルがあります。私は最近、PHPが実際のBashシェルを取得して相互作用できるようにプロジェクトを公開しました。あなたは簡単にrootでシェルを取得することもできます。ここでそれを取得します:あなたはPHPから外部のシェルスクリプトを呼び出す方法の情報を必要とする

//if PHP is running on the server you want to reboot: 
$shell = \MTS\Factories::getDevices()->getLocalHost()->getShell('bash', true); 

//if PHP needs to SSH to the server first 
$shell = \MTS\Factories::getDevices()->getRemoteHost('ip_address')->getShellBySsh('username', 'password'); 

$strCmd = "reboot"; 
$return1 = $shell->exeCmd($strCmd); 
関連する問題