webForumDet fria alternativet

mod_rewrite...

6 svar · 271 visningar · startad av Picklezz

PicklezzMedlem sedan jan. 2002414 inlägg
#1

Vet inte hur många gånger jag sökt här i forumet och på google men hittar inget somhjälper mig...

Mitt problem är att det är många som länkar till mina flash filmer och jag behöver därför lägga in ett script som gör att dom inte kan länka direkt till mina flash filer utan att länka till min sida...

Har testat följande i .htaccsss (varje försök är skrivet efter ny rad...):

#RewriteEngine On
RewriteCond %{HTTP_REFERER} !^[url]http://www.strumaland.com[/url] [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://strumaland.com[/url] [NC]
RewriteRule +.(swf)$ [url]http://www.www.strumaland.com/leecher.swf[/url]

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^[url]http://strumaland.com/.*[/url]$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://www.strumaland.com/.*[/url]$ [NC]
RewriteRule .*\.(swf)$ [url]http://www.strumaland.com/leecher.swf[/url] [F]

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^[url]http://www.strumaland.com/.*[/url]$ [OR]
RewriteCond %{HTTP_REFERER} !^[url]http://strumaland.com/.*[/url]$ [OR]
RewriteCond %{HTTP_REFERER} !^[url]http://www.finito.net/.*[/url]$
RewriteCond %{REQUEST_URI} ^/leecher.swf$
RewriteRule .*\.(swf)$ [url]http://www.strumaland.com/leecher.swf[/url] [NC]

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^[url]http://www.strumaland.com[/url] [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://strumaland.com[/url] [NC]
RewriteRule .*\.(swf)$ [url]http://www.strumaland.com/leecher.swf[/url] [R,L]

RewriteEngine On

RewriteCond %{HTTP_REFERER} !^[url]http://www.strumaland.com/[/url] [OR]
RewriteCond %{HTTP_REFERER} !^[url]http://strumaland.com/[/url]
RewriteCond %{REQUEST_URI} ^/leecher.swf$
RewriteRule .*\.(swf)$ [url]http://www.strumaland.com/leecher.swf[/url] [NC]

Någon som vet vad det är som är fel?

RobbanMedlem sedan dec. 19992 555 inlägg
#2

Vad är det som händer (eller inte händer)?

PicklezzMedlem sedan jan. 2002414 inlägg
#3

tja absolut inget händer...

RobbanMedlem sedan dec. 19992 555 inlägg
#4

Börja med att prova enklast möjliga direktiv, för att se att mod_rewrite fungerar som det skall. Kanske något i stil med:

RewriteEngine on
RewriteRule ^foo\.html$  bar.html
PicklezzMedlem sedan jan. 2002414 inlägg
#5

Japp det fungerar...

RobbanMedlem sedan dec. 19992 555 inlägg
#6

Då borde ditt andra exempel fungera. Testade följande på min server, och det fungerade.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^[url]http://lipogram.com/.*[/url]$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://www.lipogram.com/.*[/url]$ [NC]
RewriteRule .*\.gif$ - [NC,F]

Får en 403 FORBIDDEN (eftersom jag har med [F] i detta fall) när jag försöker länka in bilden på någon annan server.

Finns även ett exempel i manualen, och det ser ungefär likadant ut.

http://httpd.apache.org/docs-2.0/misc/rewriteguide.html#access

Varför det inte fungerar för dig är ju svårt att säga såhär på distans. Uppenbarligen fungerar mod_rewrite. Och vad jag kan se så borde åtminstone ditt andra och fjärde exempel fungera (även om http://www.strumaland.com/leecher.swf är överflödig i det andra då [F] tar överhand -- borde dock inte göra så att det slutar fungera).

PicklezzMedlem sedan jan. 2002414 inlägg
#7

japp det funka bättre...kom på att det verkar som om flash inte skickar med riktiga referers varje gång...

men går det att istället för att förbjuda göra så att dom får fram leecher.swf när dom försöker hämta en flash fil?

127 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)