Unterschiedliche Verzeichnise anhand der IP-Adresse ansteuern mit .htaccess

LorD-AcE

Lt. Junior Grade
Registriert
Okt. 2010
Beiträge
445
Hallo,

ich bin nicht sehr erfahren mit der Einrichtung von Apache Servern. Ich hab schon versucht eine Lösung meines Problems im Internet zu finden, allerdings bekomme ich dort nur hunderte von gleichen Anleitungen die mein Problem nicht so richtig wiederspiegeln.

Ich hoste eine Seite auf einem 0815-Webhosting mit LAMP. Im Hauptverzeichnis des Hostings liegen 2 Ordner private und public.
Jetzt möchte ich mit Hilfe der .htaccess anhand der Anfragenden IP-Adresse regeln, welchen Inhalt der Besucher zu sehen bekommt und zwar ohne, dass man in der URL sieht, dass man in private oder public ist.

Code:
RewriteEngine ON
RewriteCond %{REMOTE_ADDR} ^[IPAdresse 1]|[IPAdresse 2]
???
RewriteCond %{REMOTE_ADDR} !^[IPAdresse 1]|[IPAdresse 2]
???

Soweit bin ich, weiß aber nicht genau, wie ich die Regel schreiben muss. Hab da jetzt ne Weile dran rumprobiert, komme aber nicht weiter.
Das Endergebnis soll sein, dass [IPAdresse 1 & 2] den Inhalt des private-Ordner zu sehen bekommen, alle anderen den des public-Ordners.
 
Versuch es mal damit:

Apache-Konfiguration:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} ^\/index.php$
RewriteCond %{REMOTE_ADDR} !^127.0.0.1$    # replace 127.0.0.1 with your IP address
RewriteRule ^ http://www.example.com/under-construction/under-construction.php
</IfModule>

ich würde es aber mit PHP vorziehen

PHP:
   <?php
       // echo $_SERVER['REMOTE_ADDR'];
       // For proof of concept
        if($_SERVER['REMOTE_ADDR'] == "123.123.123.123") {
            header( 'Location: http://www.LAMP.host/private/' ) ;
        }
    ?>

Ich nehme an, dass dir klar ist, das es keine gute Idee ist das so zu lösen, wenn man dynamische IPs verwendet.
 
@pumuck|
Leider ist der erste Vorschlag der, den ich überall zu lesen bekomme, das funktioniert so nicht, denn die Rewrite-Rule bezieht sich ja auf exakt eine einzige Datei. Da werden einfach alle index.php in egal welchem Verzeichnis auf einen fest verlinke Datei geleitet.

Die PHP Version könnte ich mal testen.

Es werden ja keine dynamischen IPs verwendet. Es geht auch nicht darum irgendwas großartig abzusichern, nur eben darum Anfrager von bestimmten IPs auf anderen Content zu leiten und zwar am Besten ohne dass man es an der URL merkt.
 
Zuletzt bearbeitet:
ich ging davon aus, dass jeder Client zunächstmal eine index Seite im public aufrufen würde. und daher im public dieser Aufruf bei definierten IPs umgeleitet wird.
 
Nein, in beiden Ordnern liegt eine fixe Webseitenstruktur mit verschiedenen Inhalten. Ich hab jetzt mal ne index.php in das Hauptverzeichnis gelegt, aber header() will irgendwie nichts tun.
 
Zuletzt bearbeitet:
Zurück
Oben