In meinem Script möchte ich mittels exec eine SCP kopie ausführen lassen.
Die Authorisation funktioniert über einen Public-Key, der unter dem User www-data hinter legt ist.
Der fertige Befehl sieht wie folgt aus:
"scp user@192.168.0.1:/home/zufall/test.txt /var/www/examplesite/"
Wenn ich den Befehl von der Webseite kopiere, und mittels su www-data in der Shell ausführe, funktioniert er tadellos.
Ich habe auch schon über exec(whoami) gecheckt ob der User auch der richtige ist, was der Fall ist.
Im apache2 error.log steht, das /var/www/examplesite/ is a directory.
Falls ich die Namen der Datei ans Ende hänge, steht im error.log /var/www/examplesite/test.txt no such file or directory.
Falls jemand eine Idee hat woran das liegen könnte, wäre ich für Anregungen offen!
Die Authorisation funktioniert über einen Public-Key, der unter dem User www-data hinter legt ist.
PHP-Code:
$target_dir //ist das zielverzeichniss zb. /var/www/examplesite/
$filearr //ist eine array in dem alle dateien stehen die mittels scp kopiert werden sollen.
$this->dir //enthält das Quellverzeichniss auf dem Remoteserver
foreach($filearr as $value){
echo $command = 'scp user@192.168.0.1:'.$this->dir.$value.' '.$target_dir;
exec($command);
}
"scp user@192.168.0.1:/home/zufall/test.txt /var/www/examplesite/"
Wenn ich den Befehl von der Webseite kopiere, und mittels su www-data in der Shell ausführe, funktioniert er tadellos.
Ich habe auch schon über exec(whoami) gecheckt ob der User auch der richtige ist, was der Fall ist.
Im apache2 error.log steht, das /var/www/examplesite/ is a directory.
Falls ich die Namen der Datei ans Ende hänge, steht im error.log /var/www/examplesite/test.txt no such file or directory.
Falls jemand eine Idee hat woran das liegen könnte, wäre ich für Anregungen offen!