この質問が以前にさまざまな方法で尋ねられたことは知っていますが、なぜこれを機能させることができないのか、まだ頭を悩ませています。
まず、2 台の SLES サーバーをセットアップしました。これらはサーバー A とサーバー B で、どちらも専用チームのみがアクセスする小規模なプライベート ネットワークで実行されています。
サーバー A は、Apache、PHP、MYSQL、および ssh を実行している Web サーバーとして構成されており、これらはすべて問題なく実行されています。
サーバー B は、ssh もインストールおよびアクティブ化された状態で単純なタスクを実行するために使用されます。
サーバー A で rsa キーを作成し、それをサーバー B にインストールしました。これをコマンド ラインで実行すると、パスワードを要求することなくすぐにログインできます。サーバーAのrootアカウントとnobodyアカウントの両方に対してこのプロセスを繰り返しました.
次のようなPHPページをサーバーAに追加しました。
<?php
shell_exec('ssh root@192.162.0.5 ./StartTest.sh');
header("Location: archive.php?page=home");
?>
しかし、実行すると、フォルダーが作成されません。これをコマンドラインから実行すると、ルートとnobodyアカウントの両方で機能します(両方だと思います。現在、cliのnobodyアカウントでこれを試したかどうかは思い出せません)。root グループに nobody アカウントを追加するところまで行きましたが、それでも喜びはありません。
ここで何かを見逃しましたか。私がやりたいのは、サーバー A からサーバー B に php & ssh 経由で接続して、1 つのコマンドを実行し、Web サイトの別のページにリダイレクトすることだけです。
私のパラセタモールの在庫が少なくなっているので、どんな助けでもありがたいです.