Ticket #543 (closed defect: fixed)
mod_alias silently ignores aliases with capitals in them
Description
I've stumbled upon some interesting behavior in mod_alias: When an alias is created and the path contains capital letters, it is silently ignored. All requests to the specified path result in a 404, and it doesn't make any difference whether or not the visitor supplies the path exactly as it is written in the config, all in lowercase or all in uppercase. However, the aliasing is case-insensitive as long as the alias path is written all in lowercase in the config file. A few examples:
with server.alias("/MinervaMovies/" => "/Library/WebServer/Documents/MinervaMovies": http://server_address/MinervaMovies/index.html => 404 http://server_address/minervamovies/index.html => 404
with server.alias("/minervamovies/" => "/Library/WebServer/Documents/MinervaMovies": http://server_address/MinervaMovies/index.html => 200, all ok http://server_address/minervamovies/index.html => 200
My lighttpd.conf looks like this. I've removed all 404 handler and fcgi server parts to make sure they aren't causing the problem. I'm running 1.4.9 under Mac OS X 10.4.4.
server.port = 3000
server.modules = ( "mod_rewrite", "mod_fastcgi", "mod_alias", "mod_accesslog" )
alias.url = ("/MinervaMovies/" => "/Library/WebServer/Documents/MinervaMovies/")
server.document-root = "/opt/cms/current/public/"
server.errorlog = "/opt/cms/shared/log/lighttpd.error.log"
accesslog.filename = "/opt/cms/shared/log/lighttpd.access.log"
url.rewrite = ( "^/$" => "index.html", "^([^.]+)$" => "$1.html" )
mimetype.assign = (
".html" => "text/html",
# ...
)

