[LightTPD] mod_access / deny rückgängig machen

Apache, Lighttpd, nginx, Cherokee
dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

[LightTPD] mod_access / deny rückgängig machen

Post by dtdesign » 2007-07-19 11:32

Hallo,

ich experimentiere gerade mit mod_access rum, doch habe ich bis jetzt mein Ziel noch nicht erreicht. Folgendes schwebt mir vor:

Deny soll bei einem Zugriff auf die URL "/abc/" greifen, jedoch nicht, wenn man diese URL via SSL aufruft. Bis hierhin bin ich gekommen:

Code: Select all

$HTTP["host"] == "www.example.org" {
        $HTTP["url"] =~ "^/abc/" {
                url.access-deny = ("")
        }

        $SERVER["socket"] == "127.0.0.1:443" {
                ssl.engine      = "enable"
                ssl.pemfile     = "/etc/lighttpd/ssl/example.pem"
        }
        server.document-root    = "/var/www/example/htdocs"
        accesslog.filename      = "/var/log/lighttpd/vhosts/access.example.log"
}
Hierbei wird der Zugriff auf die URL http(s)://www.example.org/abc/ gesperrt, jedoch soll dies bei SSL nicht der Fall sein. Wie kann ich dieses Verbot nun rückgängig machen, die Lighty Doku war an dieser Stelle nicht sehr aufschlussreich ;)

Gruß
dtdesign

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: [LightTPD] mod_access / deny rückgängig machen

Post by dtdesign » 2007-07-19 11:40

Hallo matzewe01,

danke für deinen Tipp, aber daran dachte ich bereits. Der Hintergrund ist einfach, dass ich SSL nur für diese Domain haben möchte und für keine weitere auf der selben IP. Ergo steckte ich die SSL-Direktiven in den Host-Container. Welche Reihenfolge ich einsetze ist hierbei egal, da alle Anweisungen abgearbeitet werden.

Solange ich dies nicht rückgängig machen kann, komme ich hier wahrscheinlich nicht weiter...

Gruß
dtdesign

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: [LightTPD] mod_access / deny rückgängig machen

Post by Roger Wilco » 2007-07-19 11:48

dtdesign wrote:danke für deinen Tipp, aber daran dachte ich bereits. Der Hintergrund ist einfach, dass ich SSL nur für diese Domain haben möchte und für keine weitere auf der selben IP. Ergo steckte ich die SSL-Direktiven in den Host-Container.
Der HTTP Host-Header wird aber erst nach dem Verbindungsaufbau via SSL/HTTPS übermittelt. Daher muss der Block außerhalb des Host-Containers stehen.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11138
Joined: 2003-02-27 01:00
Location: Hamburg

Re: [LightTPD] mod_access / deny rückgängig machen

Post by Joe User » 2007-07-19 13:45

Code: Select all

$SERVER["socket"] == ":80" {
    $HTTP["host"] == "www.example.org" {
        $HTTP["url"] =~ "^/abc/" {
                url.access-deny = ("")
        }
        server.document-root    = "/var/www/example/htdocs"
        accesslog.filename      = "/var/log/lighttpd/vhosts/access.example.log"
    }
}
$SERVER["socket"] == ":443" {
    ssl.engine      = "enable"
    ssl.pemfile     = "/etc/lighttpd/ssl/example.pem"
    server.document-root    = "/var/www/example/htdocs"
    accesslog.filename      = "/var/log/lighttpd/vhosts/ssl.access.example.log"
}