SSH2 installieren Problem

Ok, wo läuft deine "Seite" - ich nehme an, du meinst damit eine Webseite, und du willst über diese Webseite deinen samp-server.exe steuern. Erklär mal das Ziel der Bemühungen.

Worauf ich eigentlich hinaus will:

Wenn deine Webseite und der samp-server auf dem gleichen Rechner laufen, besteht kein Grund, SSH zu verwenden.
Wenn es unterschiedliche Rechner sind, du aber auf dem Rechner, auf dem der samp-server.exe laufen soll, ein Apache läuft kannst du doch folgendermaßen vorgehen.

- Erstelle das Script, das den samp-server.exe starten soll, auf dem Rechner, auf dem der samp-server.exe läuft. Dort hast du einen Apachen. Kannst das Script also im Browser aufrufen. Schritt 1 ist erfüllt.
- Erstelle auf der Seite, auf der du den Server kontrollieren willst (also starten, anhalten, Status prüfen usw.) ein weiteres Script, was das erste Script über z.B. curl aufruft. Das ist bei weitem nicht so komplex wie die Sache mit SSH (einen SSH-Server unter Windows ans laufen zu bekommen ist ein bisschen tricky). Und es hat den Vorteil, das dein PHP auf beiden Rechnern schon alles mitbringen dürfte, was dafür notwendig ist - auch ohne Installation zusätzlicher Extensions.
 
Okey könntest du mir dann mit einem Beispiel helfen wie ich den Server starten kann und zB. Befehle bzw. eine Konsole auf die Seite kriege?
 
Ok, versuchen wir es mal. Das erste Script hast du bereits vom andern Thread. Das muss auf den Server, auf dem der samp-server.exe laufen wird. Nennen wir den Server der Einfachheit halber mal a.de. Deine Webseite läuft auf bspw. b.de.

Das Script auf Server a.de ist bspw. so über den Browser erreichbar:

http://www.a.de/sampserver.php

Das Script auf Server b.de nennen wir einfach mal

http://www.b.de/sampservercontrol.php

Das sampserver.php Script behandelst du im andern Thread, daher gehe ich jetzt mal nicht darauf ein. sampservercontrol.php könnte aber beispielsweise so aufgebaut sein:

PHP:
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.a.de/sampserver.php');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
if( curl_exec($curl) === false )
{
  echo "Fehler beim Aufrufen des Samp-Server-Scripts auf a.de:" . curl_error($curl);
}

Natürlich kannst du auch auch ganz normale GET-Parameter an die URL anhängen, um im sampserver.php Script ein bestimmtes Verhalten zu erreichen. Bspw. kannst du deine URL so aufbauen:

PHP:
curl_setopt($curl, CURLOPT_URL, 'http://www.a.de/sampserver.php?aktion=starten');

Dann müsstest du natürlich im Script auf Server a.de den $_GET['aktion']-Wert prüfen und entsprechend handeln (in diesem Beispiel eben den samp-server.exe starten.
 
Okey ich versteh jetzt nicht genau wieso zwei Urls. Kann ich nicht wie im anderen Thread
einfach per exec machen? Und wie geht das dann weil ich hab da ja ein Problem, hab ich im anderen thread ja geschrieben
 
Zurück