Hallo Leute, könnte mir einer bitte sagen wie ich in php eine Datei per ssh Zugriff auslesen kann. Es ist eine txt Datei. Zugangsdaten habe ich natürlich.
Php Soll Datei Per Ssh Auslesen
Anzeige
#2
geschrieben 26. August 2008 - 22:49
Das einfachste wäre wohl exec und dann per scp die Datei lokal auf dem Server cachen. Und dann eben die zwischengespeicherte Datei auslesen.
#5
geschrieben 27. August 2008 - 13:11
exec
SSH und SCP
Beispiel:
Wenn es ein gemieteter Webspace ist, dann ist es aber unwahrscheinlich, dass exec funktioniert. Das wird aus Sicherheitsgründen meist deaktiviert.
SSH und SCP
Beispiel:
<?php $username = 'guest' // Benutzername $server = 'example.com' // Serveradresse $qpath = '/home/test/test.txt' // Quellpfad auf $server $dpath = '/tmp/scp/test.txt' // Zielpfad exec('scp $username@$server:$qpath $dpath'); ?>
Wenn es ein gemieteter Webspace ist, dann ist es aber unwahrscheinlich, dass exec funktioniert. Das wird aus Sicherheitsgründen meist deaktiviert.
#7
geschrieben 27. August 2008 - 20:31
Whoah, das kann aber evtl. Probleme mit dem Hoster geben, wenn es ein kommerzieller Hoster ist. Reicht da nicht auch alle 5 oder gar 10 Sekunden?
#9
geschrieben 27. August 2008 - 22:16
Na wenn es dein eigener Server ist kannste doch auch das oben erwähnte ssh2_scp_recv() einbauen.
#10
geschrieben 28. August 2008 - 13:14
Also ich habe es mal so ausprobiert und erhalten folgende Fehlermeldung
Muss ich da nicht noch irgendwo da Passwort zu dem User einrichten?
Zitat
Parse error: parse error, unexpected T_VARIABLE in /var/www/vhosts/dark-project-online.de/subdomains/test/httpdocs/config.php on line 6
Muss ich da nicht noch irgendwo da Passwort zu dem User einrichten?
#11
geschrieben 28. August 2008 - 14:21
Zeig uns mal den entsprechenden Abschnitt (zb. Zeile 5-7) aus deiner config.php. Dann können wir dir einfacher helfen.
#12
geschrieben 28. August 2008 - 14:36
Beispiel mit Passwortübergabe:
<?php $username = 'guest' // Benutzername $pass = "mein_ganz_geheimes_passwort' // Passwort $server = 'example.com' // Serveradresse $qpath = '/home/test/test.txt' // Quellpfad auf $server $dpath = '/tmp/scp/test.txt' // Zielpfad exec('scp $username:$pass@$server:$qpath $dpath'); ?>
#13
geschrieben 28. August 2008 - 15:54
Hier mal der Code
<?php $username = 'USER' // Benutzername $pass = "PASSWORT' // Passwort $server = 'IP_DES_SERVERS' // Serveradresse $qpath = '/VERZEICHNIS/map.txt' // Quellpfad auf $server $dpath = '/VERZEICHNIS/httpdocs/map.txt' // Zielpfad exec('scp $username:$pass@$server:$qpath $dpath'); define('MAX_PLAYERS',50); // Max players of your server. Leaving it at 200 is fine define('TITLE','[D]ark-[P]roject-Online RPG Server'); // Title of the map define('MAP_DATA',map.txt'); // Either path and name of map.txt in your scriptfiles folder, or path and name of a file soft linked to your map.txt in scriptfiles define('MAP_FILE','http://img177.imageshack.us/img177/1159/mapbx0.jpg'); define('MAP_BG',''); define('IMAGE_X',6000); define('IMAGE_Y',6000); // Don't edit below here unless you know what you're doing define('MAP_X',6000); define('MAP_Y',6000); define('DOT_SIZE',10); define('SURR_X',120); define('SURR_Y',80); ?>
Dieser Beitrag wurde von Tille2000 bearbeitet: 28. August 2008 - 15:57
#14
geschrieben 28. August 2008 - 17:47
<?php $username = 'USER'; // Benutzername $pass = 'PASSWORT'; // Passwort $server = 'IP_DES_SERVERS'; // Serveradresse $qpath = '/VERZEICHNIS/map.txt'; // Quellpfad auf $server $dpath = '/VERZEICHNIS/httpdocs/map.txt'; // Zielpfad exec("scp $username:$pass@$server:$qpath $dpath"); define('MAX_PLAYERS',50); // Max players of your server. Leaving it at 200 is fine define('TITLE','[D]ark-[P]roject-Online RPG Server'); // Title of the map define('MAP_DATA','map.txt'); // Either path and name of map.txt in your scriptfiles folder, or path and name of a file soft linked to your map.txt in scriptfiles define('MAP_FILE','http://img177.imageshack.us/img177/1159/mapbx0.jpg'); define('MAP_BG',''); define('IMAGE_X',6000); define('IMAGE_Y',6000); // Don't edit below here unless you know what you're doing define('MAP_X',6000); define('MAP_Y',6000); define('DOT_SIZE',10); define('SURR_X',120); define('SURR_Y',80); ?>
#15
geschrieben 28. August 2008 - 17:49
Hmm, stimmt meine Beispiele waren ein wenig unsauber. Sorry dafür.