Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PHP Request + Response für bestimmte IPs

Empfohlene Antworten

Veröffentlicht

Hallo Community,

ich habe so etwas noch nie gemacht, daher mag es vielleicht was ganz banales sein. Ich habe eine Firewallregel, die nur bestimmte IPs durchlässt. Über die kostenlose Proxyliste probiere ich die Zugriffe mit diversen IPs und Ports aus. Fazit: ich komme immer auf die Seite, die mir ok ausgibt und werde nicht zum Registrieren weitergeleitet.

$url = "http://www.beispielfirma.de/beispiel/testomat.php"; // + evtl. Übergabeparameter
try {
$request = fopen($url,'r');
$content = fread($request,100); //100000
if($content == "toll!") {
//redirect to aspx-Login
echo "ok";
} else {
//redirect to register
header('Location: /beispiel/register.php');
}

} catch (Exception $e) {
echo $e->getMessage();
}[/PHP]

Jetzt frage ich mich, ob so ein Request ohne Zugriffsrechte agiert oder wie das eigentlich funktioniert.

Hilfe :)

Allie

Ich kapiere irgendwie nicht, was du überhaupt machen willst... :confused:

Du ließt irgeneine Seite und wenn da nicht der Inhalt kommt den du erwartest, willst du auf ne Registrierungsseite umlenken?

Und wozu das ganze?

Und was wenn sich der Inhalt der Seite ändert? Oder wenn allow_furl_open beim Server auf false gesetzt ist? ;)

Mach das doch mit einem Socket. Das ist etwas aufwendiger, aber du kannst dann den Status-Code der antwort auswerten, was dir ja meist mehr bringt.

siehe: PHP: fsockopen - Manual

Hallöchen,

ich möchte zum Testen einmal mit einer erlaubten und einmal mit einer verbotenen IP auf die Seite zugreifen. Diese soll einfach eine Testseite (testomat.php) aufrufen und schauen, ob etwas zurück gegeben wird. Wenn derjenige keine Zugriffsrechte auf die Datei hat, wird nichts zurückkommen und er soll sich dann bitte registrieren. Hat der User allerdings Leserechte, erhalte ich meinen String "toll!" zurück und kann ihn weiterleiten auf die folgenden ASPX-Seiten. Das ganze soll eigentlich nur stattfinden, damit der User, der keine Erlaubnis hat, keinen 404 oder sowas bekommt.

Schau mir jetzt mal das fsockoben an...

LG,

Allie

Ohne genau zu wissen wie das jetzt im Detail realisiert wird, folgende Annahme:

  1. Ein User mit unberechtigter IP will auf die Seite zugreifen -> Forbidden
  2. Ein User mit berechtigter IP will auf die Seite zugreifen -> Erlaubt

Jetzt kommt dein Skript ins Spiel:

  1. Ein User mit unberechtigter IP greift auf dein Skript zu, der Server auf dem dein Skript liegt hat eine berechtigte IP, dein Skript greift auf die Seite zu -> Erlaubt.
  2. Ein User mit berechtigter IP greift auf dein Skript zu, der Server auf dem dein Skript liegt hat eine berechtigte IP, dein Skript greift auf die Seite zu -> Erlaubt.

Sieht du was passiert? Dein Skript ruft die entsprechende Seite auf, ist durch die Server IP aber immer autorisiert.

Gruß

Das ganze soll eigentlich nur stattfinden, damit der User, der keine Erlaubnis hat, keinen 404 oder sowas bekommt.

Öm... dein Server greift auf das Dokument Testomat.php zu, nicht der User mit der verbotenen IP. Also bekommst du immer die Meldung, die die IP von deinem Server liefert.

Du musst die IP schon selber prüfen ;)


if (!testValidIP($_SERVER["REMOTE_ADDR"]))
{
header("location: register.php");
}
[/php]

In der Funktion testValidIP prüfst du, ob die IP des Clients in einer Liste mit Adressen steht, die zugreifen dürfen.

okay, für die Liste muss ich schauen, wo mein Chef die hat. Da komme ich so nicht ran. Was kein-tee sagt, klingt plausibel. Danke für Eure Hinweise!

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.