Hey,
ICh brauch da mal hilfe kann mir jemand sagen wie sich das ermöglichen lässt? ich habe vor über eine webpage die server.cfg zu editieren hab aber keine ahnung wie ich das realisieren soll...
Datei über SSH Verbindung in PHP/HTML editieren
- jdm_driven
- Geschlossen
- Erledigt
-
-
Beitrag von Dayme ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar. -
Beitrag von bauerj ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar. -
-
GGWPund wie soll der das ausführen bitte schön von ner Website aus? Bitte erst mal den Post lesen dann dumme Antworten geben Danke!
-
Er hat doch geschrieben, dass er es über eine SSH Verbindung machen will...
-
Nein eben nicht er will, ich schätze mal für eine CP.
Die Server.cfg über den Webbrowser bearbeiten. Ok man muss zugaben überschritt ist etwas komisch gewählt. -
-
Ok soll mir egal sein have FUN mit deiner Erkenntnis
-
Also ich erklärs nochmal genauer^^ hab wohl etwas verwirrend geschrieben.
Also ich möchte auf einer website (ja ein CP) die server.cfg auslesen die auf einem anderen Server liegt. Ich hatte die Idee dies über eine SSH verbindung zu machen weiß aber noch nicht wie ich dies anstellen soll.Diese will ich dann editieren und wieder abspeichern.
-
das ist doch mal gut. Habe ich auch schon gesehen frag mich aber bitte nicht wie das genau funktioniert.
Aber mal ganz ehrlich hat dir der grandiose Post von Herrn bauerj weiter geholfen ? xD -
Aber mal ganz ehrlich hat dir der grandiose Post von Herrn bauerj weiter geholfen ? xD
meinst du diese? :
PHP-Quelltext
1
Nutzer ----HTTP-----> Server 1 [PHP] -------- ssh -------> Server 2 [sshd] ----> DateiDas is genau so wie ich mir das dachte nur feht mir wie ich das umsetze
-
-
also mein Code sieht jetzt so aus: speichern funktionier allerdings das auslesen nicht.. kann mir da vielleicht einer helfen?
P.S. Danke bauerj hast mir sehr weitergeholfen
PHP<?php$connection = ssh2_connect(ZENSUR', 22);ssh2_auth_password($connection, 'ZENSUR', 'ZENSUR');$res = ssh2_exec($connection, "/home/test.txt");if(isset($_POST['set'])) { $settext = $_POST['text'];$stream = ssh2_exec($connection, "echo '". $settext ."' > /home/test.txt");}?><form method="post" > <textarea name="text"><?php echo(stream_get_contents($res)); ?></textarea> <input name="set" type="submit" value="Alles Speichern"/></form>
-
Fast richtig:
PHP<?php$connection = ssh2_connect('ENSUR', 22);ssh2_auth_password($connection, 'ZENSUR', 'ZENSUR');stream_set_blocking($stream, true);$res = ssh2_exec($connection, "cat /home/test.txt");if(isset($_POST['set'])) { $settext = $_POST['text'];$stream = ssh2_exec($connection, "echo '". $settext ."' > /home/test.txt");}?><form method="post" > <textarea name="text"><?= stream_get_contents($res) ?></textarea> <input name="set" type="submit" value="Alles Speichern"/></form>
PS: Ich habe gerade gesehen, dass das ganze auch einfacher geht:
-
Fast richtig:
PHP<?php$connection = ssh2_connect('ENSUR', 22);ssh2_auth_password($connection, 'ZENSUR', 'ZENSUR');stream_set_blocking($stream, true);$res = ssh2_exec($connection, "cat /home/test.txt");if(isset($_POST['set'])) { $settext = $_POST['text'];$stream = ssh2_exec($connection, "echo '". $settext ."' > /home/test.txt");}?><form method="post" > <textarea name="text"><?= stream_get_contents($res) ?></textarea> <input name="set" type="submit" value="Alles Speichern"/></form>
so hab ich nun getestet funktioniert nicht mit dem auslesen aber spuckt mir folgenden fehler aus:
-
Oh, da muss natürlich connection statt stream stehen.
Ich würde dir aber empfehlen die zweite Möglichkeit mal auszuprobieren, hier könnten sich noch Probleme geben, insbesondere wenn du mehrere Zeilen speichern willst.
-
mit der zweiten komm ich gerade garnicht zurecht..
und das connection gehört in die klammern von stream_set_blocking oder?
bekomme folgenden error
Warning: stream_set_blocking(): supplied resource is not a valid stream resource in /var/www/virtual/ZENSUR.de/htdocs/try.php on line 5
zeile 5 ist stream_set_blocking
-
So meinte ich das:
PHP<?php$connection = ssh2_connect('ENSUR', 22);ssh2_auth_password($connection, 'ZENSUR', 'ZENSUR');$res = ssh2_exec($connection, "cat /home/test.txt");stream_set_blocking($res, true);if(isset($_POST['set'])) { $settext = $_POST['text']; $stream = ssh2_exec($connection, "echo '". $settext ."' > /home/test.txt");}?><form method="post" > <textarea name="text"><?= stream_get_contents($res) ?></textarea> <input name="set" type="submit" value="Alles Speichern"/></form>
-
Okay danke klappt jetzt Nochmal vielen dank für deine Hilfe :))
-
-
breadfish.de
Hat das Thema geschlossen.