Bug #803

nesting $HTTP["referer"] inside of $HTTP["url"] does not work

Added by Anonymous 836 days ago. Updated 274 days ago.

Status:Fixed Start:
Priority:Low Due date:
Assigned to:- % Done:

0%

Category:core
Target version:1.4.17
Pending:

No

Resolution:

duplicate


Description

This works:


$HTTP["url"] =~ "^/images/" {
     url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
}

This works:


$HTTP["referer"] !~ "^($|http://www\.fussball-forum\.de)" {
     url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
}

This does not work:


$HTTP["url"] =~ "^/images/" {
  $HTTP["referer"] !~ "^($|http://www\.fussball-forum\.de)" {
     url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
  }
}

All requests will be served, none denied.

-- alisencer (ät) gmail.com

History

08/08/2006 12:21 PM - moo

you're right, it's a limited design, a expected result.

08/08/2006 08:41 PM - Anonymous

Is there any chance that this will change?

My situation is as follows: We want to protect against hotlinking - but only from that subdirectory (images). We offer other image material, like Banners etc. from other directories where we encourage people to hotlink.
I can currently think of working around this by moving them to different domains, so it's not critical - but it would be nice.

Also you mention it is expected - are there any hints (without reading code) to find out which conditional-nesting can work and which one would not. Thanks. :)

-- alisencer (et) gmail com

08/29/2006 08:50 AM - Anonymous

I think this should work:

$HTTPreferer !~ "^($|http://www\.fussball-forum\.de)" {
$HTTPurl =~ "^/images/" {
url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
}
}

-- Nicolae Namolovan

08/29/2006 08:53 AM - Anonymous

Oops, bad formating.

Just put $HTTPurl inside $HTTPreferer
$HTTPurl must be allways the last, at least in 1.4.x


$HTTP["referer"] !~ "^($|http://www\.fussball-forum\.de)" {
  $HTTP["url"] =~ "^/images/" {
     url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
  }
}

-- Nicolae Namolovan

08/18/2007 09:33 AM - jan

  • Status changed from New to Fixed
  • Resolution set to fixed

fixed in r1942

10/20/2007 06:04 PM - Anonymous

  • Status changed from Fixed to Need Feedback
  • Resolution deleted (fixed)

Why this doesn't deny access to http://jsdev.ru/book/javascript-bible.zip with NO referer ?

$HTTPurl =~ "^/book/(.*)\.zip$" {
$HTTPreferer !~ "jsdev\.ru$" {
url.access-deny = ( "" )
}
}

Seems bug still open ?

-- iliakan

02/20/2008 03:21 PM - stbuehler

  • Status changed from Need Feedback to Fixed
  • Resolution set to duplicate

See #1164 for patch.

Also available in: Atom PDF