Require Authentication For Multiple Directories in Lighttpd
I have a domain that I use to hold my notes, personal wiki, html versions of books and magazines, and other assorted resources. Much of this I want to remain private so I’ve implemented Lighttpd access restrictions at the root of those directories. I had a little bit of trouble this evening adding additional directories to my restriction list, so I thought I would make a note of it here. Hopefully it’ll help anyone else running into similar trouble.
$HTTP["host"] =~ "domain.tld" {
auth.require = (
"/secret/" => (
"method" => "basic",
"realm" => "Password Protected Area",
"require" => "valid-user",
),
"/private/" => (
"method" => "basic",
"realm" => "Password Protected Area",
"require" => "valid-user",
)
)
}
The cause of my problem was the missing comma between the directory names. If you’re going to limit access to multiple directories in a list like this it needs to be a comma separated list.
Did you finaly find a way to do multiple directories ?
I did find a way to do multiple directories within a single rule. Below is an example:
<code>
$HTTP["host"] =~ "domain.tld" {
auth.require = (
"/private1/" => (
"method" => "digest",
"realm" => "Private Data",
"require" => "user=username1|user=username2",
),
"/private2/" => (
"method" => "digest",
"realm" => "Private Data",
"require" => "user=user1",
),
"/private3/" => (
"method" => "digest",
"realm" => "Private Data",
"require" => "user=user1",
)
)
}
</code>