Seit kurzem lese ich hier interessiert mit und heute kommt schon der Tag, wo ich eure Hilfe brauche.
Eigentlich, so scheint es, ist das was ich tun will nicht sooo schwierig, und trotzdem, es will nicht gehen.
Ich möchte einen direkten Zugriff auf ein bestimmtes Verzeichnis verbieten, wobei gewisse domains dies dürfen sollten... easy
Die RewriteRule verbietet, so wie ich das möchte, dien Zugriff auf verschiedene Dateiendungen und sendet den Anfrager auf eine definierte Adresse. Danach habe ich, mehr zu Testzwecken, noch Error Doumente angehängt. Das ganze sieht dann so aus:
- Code: Alles auswählen
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.net(/.*)?$ [NC, OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?otherexample\.ch(/.*)?$ [NC, OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?onemoreexample\.com(/.*)?$ [NC, OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?iam.outofexample\.at(/.*)?$ [NC, OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?outofexample\.at(/.*)?$ [NC, OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?thelast.example.ihave\.de(/.*)?$ [NC]
RewriteRule \.(exe|gif|jpg|png|jpeg|GIF|JPG|PNG|zip|rar|JPEG|s wf|h tml)$ http://www.mysitebyexample.net [R,L]
ErrorDocument 400 http://www.mysitebyexample.net/index.php?option=com_content&view=article&id=219:fehler-400-qbad-requestq&catid=186
ErrorDocument 401 http://www.mysitebyexample.net/index.php?option=com_content&view=article&id=220:fehler-401-qauthorization-requiredq&catid=186
ErrorDocument 403 http://www.mysitebyexample.net/index.php?option=com_content&view=article&id=221:fehler-403-qaccess-deniedforbiddenq&catid=186
ErrorDocument 404 http://www.mysitebyexample.net/index.php?option=com_content&view=article&id=222:fehler-404-qnot-foundq&catid=186
ErrorDocument 500 http://www.mysitebyexample.net/index.php?option=com_content&view=article&id=218:fehler-500-qserver-errorq&catid=186
Das ganze läuft unter dem CMS Joomla.
Das Problem... eigentlich tut es, was ich will. Nur leider, beim direkten Zugriff auf ein Doukment innerhalb des geschützten Verzeichnis, erhält man einen 500 Error, der nicht vom ErrorDocument 500 abgefangen wird und einen netten Eintrag im Error log "RewriteCond: bad flag delimiters".
Ich weiss, dass diese Meldung bedeutet, dass ich entweder einen nicht "escapten" Platz in der Regex habe oder ein fehlendes [OR]... mit meinem begrenzten Wissen finde ich aber keines von beiden.
Hey, besten Dank an alle hier, die sich die Mühe nehmen zu Antworten!


