Een bepaalde website blokkeren (deeplinken)

Status
Niet open voor verdere reacties.

nuffie11

Gebruiker
Lid geworden
1 jul 2011
Berichten
62
Beste allemaal,

Ik zal m'n vraag even met een voorbeeld toelichten: Als iemand bijvoorbeeld een plaatje (dat op mijn server staat) op zijn website zet, dan wordt dat plaatje telkens via mijn server geladen. Stel nou dat ik een site zie die ik niet wil toestaan om dingen vanaf mijn server te laden, is er dan een mogelijkheid om enkel die website te blokkeren? Dus dat ene plaatje niet meer wordt geladen op zijn website, maar nog wel op mijn eigen website en die van andere. Moet ja dan iets zetten in .htaccess of in de <head>?

Snappen jullie een beetje wat ik bedoel? IK hoop het, ik hoor graag een antwoord tegemoet.
 
Manamana, dat komt al aardig in de richting, dankjewel, ben nu weer een stap verder! Maar als ik goed kijk blokeer dit alle websites. Weet jij, of iemand anders, of je er iets tussen kan zetten dat het maar één website blokkeerd?
 
Ik volg het even ..
 
Door bij de rewritecond de NOT (!) weg te halen en daar de specifieke website in te stellen. Er staat nu (leestaal):

referer niet <mijn volledige domain> (doorgestuurd intern via mijn webpagina)
OF
referer niet <LEEG> (directe link naar de pagina)
DAN
Vervang plaatje

Je kunt hier eenvoudig van maken:
RewriteCond ^http://(.+\.)?mijndomeinnaam\.nl/ (vervelende pagina)
RewriteRule .... (wat er dan moet gebeuren)
 
Door bij de rewritecond de NOT (!) weg te halen en daar de specifieke website in te stellen. Er staat nu (leestaal):

referer niet <mijn volledige domain> (doorgestuurd intern via mijn webpagina)
OF
referer niet <LEEG> (directe link naar de pagina)
DAN
Vervang plaatje

Je kunt hier eenvoudig van maken:
RewriteCond ^http://(.+\.)?mijndomeinnaam\.nl/ (vervelende pagina)
RewriteRule .... (wat er dan moet gebeuren)

@wampier, ik heb het toegepast maar het werkt volgens mij niet, wellicht heb ik nu iets fout in de code:

RewriteEngine On
RewriteCond ^http://(.+\.)?vervelendesite\.nl/ [NC]
RewriteRule \.(gif|jpg|mid|png)$ - [F]

(ik kan de bovenstaande code toch gewoon onder ErrorDocument 404 /error404.html zetten met een enter in het .htaccess bestand? Misschien ligt hier de fout?)
 
Laatst bewerkt:
het moet in de htaccess van je hele site of de pagina met de plaatjes. de htaccess op 404 wordt uiteraard alleen aangeroepen bij een 404
 
Je kunt de rule eens omschrijven naar iets wat je makkelijker kun testen. ik ben niet zeker van die regel. Het voorbeeld uit de originele site heeft:

.*\.(jpe?g|gif|bmp|png)$

die punt-sterretje zijn wel belangrijk. Ik ken ook de [F] flag niet goed. misschien morgen maar eens op inlezen :)
 
Ik heb even gekeken naar de flags, maar de [F] is noodzakelijk, zie: http://code.fremonttech.com/htaccess/htaccess-flags/
Nogmaals dank wampier!

Even voor de mensen met de zelfde vraag alles op een rij:

De code om één website te blokkeren:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?vervelendewebsite.nl [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ - [NC,F]

Als je meerdere websites wilt blokkeren:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?vervelendewebsite1.nl [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ - [NC,F]
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?vervelendewebsite2.nl [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ - [NC,F]
 
Rewriteconds zijn al logische "OF". je hebt dus alleen verschillende conditions nodig en 1 rule.

cond site 1
cond site 2
cond site 3
...
rule
 
Dat dacht ik ook, alleen dan werkt het niet, zoals ik schreef wel...
 
Het hoort gewoon te werken. In principe is niets op tegen om ze zo neer te zetten (nauwelijks verschil in performance), maar ik vind het groeperen van functies overzichtelijker voor normaal gebruik.

Ik heb overigens wel vaker meegemaakt dat als je een nieuwe groepering maakt alleen de eerste conditie blijft gelden totdat de server herstart wordt. Mogelijk is dit een beperking van de engine.
 
Ahá, dat zal het zijn, dan denk ik dat mijn vraag is opgelost! Nogmaals; bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan