Zum Inhalt springen

Server A mit Server B kommunizieren lassen.


Empfohlene Beiträge

Hallo Leute,

ich habe folgendes vor:

Ich möchte ein Script schreiben, welches auf dem Server A liegt und wartet, bis ein anderes Script von Server B den Kontakt sucht, eine Variable übergibt und die Rückgabe einer anderen erwartet.

Hat jemand eine Idee/Tipp/Vorschlag, wie ich dies realisieren könnte?

Vielen Dank im Voraus

String

Link zu diesem Kommentar
Auf anderen Seiten teilen

Da du mit PHP arbeitest (wenn ich dein anderes Topic richtig werte), würde ich dir file streams ans Herz legen. Sprich du öffnest mit file_get_contents() eine URL und er gibt dir den Response als String zurück. Oder du befasst didich mit Sockets, damit sind komplexerecDinge möglich, aber das ganze wird auch schwerer zu programmieren.

Link zu diesem Kommentar
Auf anderen Seiten teilen

An file Streaming hatte ich auch schon gedacht. Mir geht es im speziellen um eine Art Authentifizierung eines von mir entwickelten Moduls. Ich möchte also, dass das Modul bei der ersten Nutzung nach einer Authentifizierung fragt. Was mich vor einer einfachen Copy&Paste-Verbreitung meines Moduls schützen soll. Mir ist klar, dass dies nicht wirklich sicher ist, aber diese Funktion soll es einfachen DAU's erschweren mein Modul zu verbreiten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich brauche 2 Scripte:

Script 1, welches von mir in mein Modul eingebaut wird. Dieses Script soll Kontakt mit Script Nummer 2 aufnehmen, welches auf meinem Server liegt. Script 1 übergibt 2 Parameter und erwartet ein Parameter zurück. Script 2, welches auf meinem Server liegt nimmt die beiden Parameter entgegen, greift auf meine Datenbank zu und führt eine Überprüfung durch. Im Anschluss daran, gibt es ein Parameter an Script 1 zurück, wodurch Script 1 eine dafür vorgesehene Routine ausführt.

Genau das brauche ich. Leider hatte ich bisher keinen Erfolg :(

Link zu diesem Kommentar
Auf anderen Seiten teilen

Server:


<?php
if($_GET['param1'] == 'param1Value' && $_GET['param2'] == 'param2Value') {
// db actions...
echo $result;
}
[/php]

Client:

[php]
<?php
$result = file_get_contents('http://lala.com/server.php?param1=param1Value&param2=param2Value');
if($result == 'valid')
// okay
else
// fail

So als Denkanstoss ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

So habe ich es versucht:

Client:

<?php

$to_transfer = array(

"id" => "359322667121",

"name" => "site"

);

$url_to_target = "http://test.de/test.php";

function modula_array2query($array, $qm=true) {

$query = $qm ? "?" : "";

foreach($array AS $key => $value) {

$query.= "&". urlencode($key) ."=". urlencode($value);

}

return $query;

}

function modula_transfer2url($url, $query="") {

$location = $url . $query;

if(!headers_sent($filename, $linenum)) {

header("location: {$location}");

exit;

} else {

echo '<script type="text/javascript">';

echo 'window.location.href = "'.$location.'";';

echo '</script>';

exit;

}

}

$querystring = modula_array2query($to_transfer);

modula_transfer2url($url_to_target, $querystring);

?>

Server:

<?php

echo "<pre>";

echo "Via GET übergebene Variablen\n";

print_r($_GET);

echo "Via POST übergebene Variablen\n";

print_r($_POST);

echo "</pre>";

?>

So hatte ich es versucht, er übergibt die Parameter an meinen Server leitet mich jedoch zum server weiter und ich komme nicht zurück auf mein Clientscript, wodurch meine Authentifizierungsroutine nicht fertig gestellt wird.

Vielen dank für dein Code, könntest du mir sagen, wo mein Fehler ist?

Link zu diesem Kommentar
Auf anderen Seiten teilen

echo '<script type="text/javascript">';

echo 'window.location.href = "'.$location.'";';

echo '</script>';

ich lasse die Headerinformation mit dem jsscript erneut senden, da zu diesem Zeitpunkt die Headerinformation bereits gesendet wurden.

Mein Script oben ist eine starke Vereinfachung und hat noch nicht mit dem Authentifizierungsscript zu tun. Ich habe meinen Fehler bereits gefunden.

Durch das erneute Senden der Headerinformationen und weiterleiten zum Server fährt mein Script in eine Sackgasse. Ich habe viel zu umständlich gedacht. der Code von MLX ist genau das was ich brauchte.

Danke dir MLX

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das kannst du eigentlich bei jedem Programm, das den Key Online abgleicht. Bei PHP basierten Applikationen ist es allerdings besonders unsicher, da jeder den Source einsehen und ggf auch verschlüsselungsalgorithmen nachbauen kann. Wobei.man gar nicht so weit gehen muss. Abfrage ausbauen, die isValid Variable fix auf true setzen und die Sache ist gegessen...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bei PHP basierten Applikationen ist es allerdings besonders unsicher, da jeder den Source einsehen und ggf auch verschlüsselungsalgorithmen nachbauen kann.

Ah ja, und wo ist das Problem, wenn ich den Algorithmus einsehen kann? Wer einen Verschlüsselungsalgorithmus entwirft und den Code unter Verschluss hält, der gehört standrechtlich aufgehangen: Security through obscurity

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...