Der folgende Beitrag wurde am 09. 07. 2012, 13:38 Uhr von cantharis veröffentlicht.
Hi,
ich wollte eine .htaccess Datei anlegen, die nur Zugriff auf meine index.php Datei gewährt und alle anderen Aufrufe blockt.
Deny from all
<FilesMatch "index.php">
Allow from all
</FilesMatch>
DirectoryIndex index.php
Options -Indexes
Leider habe ich das Problem das wenn ich "Deny from all" reinnehme, dass dann die index.php Datei nicht mehr als Startseite aufgerufen wird.
Wie kann ich das ändern?
Der folgende Beitrag wurde am 10. 07. 2012, 22:38 Uhr von Baba veröffentlicht.
> Leider habe ich das Problem das wenn ich "Deny from all" reinnehme, dass dann die index.php Datei nicht mehr als Startseite aufgerufen wird.
Wenn du <domain>/index.php schreibst, wird diese angezeigt, nehme ich an? Denn Deine htaccess tut, was sie soll. Bei fehlendem "index.php" in der url greift nicht die Regel.
> Wie kann ich das ändern?
Du muss daher alle Anfragen ohne script auf index.php umleiten, damit der string wieder auftaucht.
RewriteEngine on
RewriteBase /
# erzwinge index.php
RewriteRule ^$ index.php [L]
Deny from all
<FilesMatch "index.php">
Allow from all
</FilesMatch>
DirectoryIndex index.php
Options -Indexes
Zwei Nachteile:
- jede eingebundene Datei, ob css, favicon oder js wird geblockt.
- index.php bleibt unschön immer in der Adressleiste stehen.
Möchtest Du andere Lösungen in Betracht ziehen?
Cheers,
Baba
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4