Page 1 of 1

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

Posted: 2007-07-19 11:32
by dtdesign
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

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

Posted: 2007-07-19 11:40
by dtdesign
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

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

Posted: 2007-07-19 11:48
by Roger Wilco
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.

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

Posted: 2007-07-19 13:45
by Joe User

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"
}