# Hotlinking-Sperre gibt Fehler aus



## RageNo1 (19. August 2005)

Hallo ich betreibe seit einiger Zeit eine Website welche ständig wächst.
Ich bin seit einiger Zeit auf einem anderen Server wo ich mehr Traffic usw. habe.
Ich hoste unter anderem Videos welche schonmal ganz gerne dem Hotlinking 
zum Opfer fallen. Nun möchte ich mir dagegen schützen und habe folgenden 
Code in eine .htaccess datei gepackt und in ein betroffenes Verzeichnis geladen.


```
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx.com(/)?.*$     [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx.de(/)?.*$     [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx.net(/)?.*$     [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp|wmv|wma|mp3|mpeg|mpg|avi|mov)$ http://www.eblogx.de [R,NC]
```

Auf dem alten Server hat es funktioniert nur jetzt kommt immer ein Fehler:
Hier ein Link zum Testen 
Wenn ich die Datei direkt aufrufe kommt auch die Meldung. 

Nehme ich nun die .htaccess raus, so kann ich die Datei aufrufen.
Ich hoffe mir kann jemand sagen, wo der Fehler ist bzw. was am Server 
eingestellt werden muss damit das ganze funktioniert.

Mfg Ragey


----------



## Neurodeamon (20. August 2005)

Versuch es mal so:


```
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx\.com(/)?.*$     [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx\.de(/)?.*$     [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?eblogx\.net(/)?.*$     [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp|wmv|wma|mp3|mpeg|mpg|avi|mov)$ http://www.eblogx.de [R,NC]
```

Ansonsten finde ich keine Fehler. Du hattest nur den Punkt vor der TLD vergessen, den mußt Du explizit mit Backslash angeben, daher wohl auch die Fehlermeldung!  :suspekt:


----------



## Gumbo (20. August 2005)

Probier mal Folgendes:
	
	
	



```
RewriteEngine	On
RewriteCond	%{HTTP_REFERER}					!^$
RewriteCond	%{HTTP_REFERER} 				!^http://(www\.)?eblogx\.(com|de|net).*$	[NC]
RewriteRule	.*\.(gif|jpe?g|bmp|wm[av]|mp3|mpe?g|avi|mov)$	http://www.eblogx.de/				[R,L,NC]
```


----------



## Sven Mintel (20. August 2005)

Da deine Links momentan nicht funktionieren, und du nicht mittgeteilt hast, welcher Fehler kommt, kann ich nur mutmassen:
Kommt ein Fehler 500?
Wenn ja, dann ist vielleicht serverseitig das Schreiben von FileInfo-Direktiven in .htaccess nicht gestattet.

Für die DOCUMENT_ROOT muss der Server mit 

```
AllowOverride FileInfo
```
(bzw. einer Kombination mit FileInfo oder gar All) konfiguriert sein, und natürlich das Rewrite-Modul überhaupt geladen sein.

Ob es daran liegt, kannst du testen, indem du alles aus der .htaccess rausnimmst, bis auf die Zeile 
*RewriteEngine On*

...der Fehler sollte bereits dadurch auftreten.

Wenn du keinen Zugriff auf die Konfiguration hast, müsstest du deinen Hoster bitten, dies zu Ändern.


An dem fehlenden Backslash vor dem Punkte sollte es nicht liegen, da dieser dort erlaubt ist und auch auf deine Domains zutreffen würde.

Du solltest das Backslash aber trotzdem verwenden, ansonsten könnte man deine RewriteRule von Domains a'la
*http://eblogxynet.boeserserver.de*
...aus umgehen.


----------

