Website nur als iframe zugänglich machen, nicht öffentlich
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anfrage
ausgeben
auslese
austauschen
auswerten
beispiel
benutzer
browser
code
datei
datum
direkt einbinden
kopieren
liste
nutzer
parameter
server
teil
url
verbindung
-
Hallo zusammen,
ich habe 2 Websites.
Website A) Oberfläche in Contao, keine Dynamischen Inhalte, also keine Datenbankanbindung.
Website B) Eine einzige Seite, geschrieben mit asp.net welche eine Datenbank-Verbindung zu einem MS-SQL Server herstellt und eine Liste von Informationen lädt und anzeigt.
Da ich die Verbindung zum SQL-Server nicht via PHP herstellen wollte, habe ich Website B in asp.net programmiert und in Website A) via iframe eingeblendet.
Sieht schön aus, funktioniert auch gut.
Um das ganze noch etwas sicherer zu machen, möchte ich das Website B nicht für jeden erreichbar ist der die IP der site kennt, sondern nur als Element von Website A erreichbar ist.
Mein erster Ansatz war Website B zu sperren für alle IPs außer eben die von Website A, allerdings wird die Website B nicht von Website A aufgerufen, sondern auch von Benutzer.
Ich hoffe ihr konntet mein Anliegen verstehen und habt evtl eine Lösung parat :) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Das geht nicht, wenn du dich auf einen iframe festlegst. Der gibt dem Benutzer lediglich einen Link, den der Browser dnan aufrufst. Du könntest allerdings die Daten der ASP-Seite per php auslesen und dann in die Seite direkt einbinden. Dann würde die Anfrage an die ASP-Seite von der PHP-IP kommen, nicht mehr vom Nutzer
-
jalstudios schrieb:
Das geht nicht, wenn du dich auf einen iframe festlegst. Der gibt dem Benutzer lediglich einen Link, den der Browser dnan aufrufst. Du könntest allerdings die Daten der ASP-Seite per php auslesen und dann in die Seite direkt einbinden. Dann würde die Anfrage an die ASP-Seite von der PHP-IP kommen, nicht mehr vom Nutzer
Hi,
für andere Möglichkeiten als den iframe bin ich natürlich offen.
Aber wir genau funktioniert das mit dem Seiteninhalt auslesen?
Kann ich einfach den gesamten Seiten-Inhalt kopieren und ausgeben, also auch mit Layout usw? Oder muss ich eine Art Webservice erstellen die eine XML-Datei mit den Daten zurück gibt, welche ich dann via PHP auslese? -
Du könntest mit Jsonp arbeiten. Dazu brauchst du lediglich PHP auf dem Datenserver und auf deinem HTML Frontend fügst du eine kleine JS Datei ein. Hier ein Beispiel:
JS, die die Daten lädt. Hier kannst du natürlich davor mit JS noch machen was du möchtest. Die Parameter gib wie im Beispiel an, vor allem das die Funktion parseRequest! So kannst du noch Browserspezifikationen u.ä übermitteln.
function callTheJsonp() { var id = 123; // die url zum datenserver den Callback Parameter immer mitgeben (siehe php teil) var url = "http://adspace.eu/ad.php?callback=parseRequest&id="+id; var script = document.createElement('script'); script.setAttribute('src', url); document.getElementsByTagName('head')[0].appendChild(script); }
function parseRequest(response) { var elem = document.getElementById("ad"); elem.innerHTML = respone; }
Und über PHP nimmst du das ganze so entgegen:
$callback = ''; if (isset($_GET['callback'])) { $callback = filter_var($_GET['callback'], FILTER_SANITIZE_STRING); }
Und die Daten vom Datenserver ausgeben (Callback Function unbedingt GENAUSO angeben) geht dann so.
echo $callback . '('.json_encode($dein_ausgabearray_im_jsonformat).');';
Um das ganze dann auch noch sicher zu gestalten, kannst du ja über das Callback ein Passwort o.ä in MD5 mitgeben und auswerten. Oder auch Cookies kannst du so über Domaingrenzen hinweg austauschen. Ich verwende es in einigen Projekten und liebe es :D Die Ausgabe muss ja auch nicht unbedingt im JSON Format sein, ist aber in den meissten fällen am einfachsten.
lg -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage