Isso realmente diz tudo:
## the subdirectory of a user's home dir which should be accessible
## under http://$host/~$user
userdir.path = "public_html"
Você provavelmente deseja userdir.path = "www" , mas não pode mapear http://x.x.x.x/project para /home/user/www/project , pois como saberia o nome de usuário? mod_userdir não foi projetado para funcionar com mod_auth . Portanto, no seu caso, um usuário bob usaria http://x.x.x.x/~bob/project para acessar ~bob/www/project .
Editar
O conteúdo não deve depender da autenticação (mod_auth); talvez um dia o usuário bob queira acesso a um projeto do usuário alice?
Dependendo da autorização está ok; como você dá ao usuário "autorização" para acessar certos dados, sua apresentação pode mudar. Dependendo da autorização, um usuário pode obter 403 Forbidden , acesso somente leitura, acesso de gravação (limitado), acesso de administrador completo, ...
Dito isto, você pode ser capaz de criar seu próprio mapeamento de caminho phyiscal com mod_magnet, que também pode incluir o nome de usuário do cabeçalho Authorization (veja também # 2495 ).
Dado que isso é strongmente desencorajado, não há uma maneira "fácil" de fazer isso. "Variáveis" na configuração são avaliadas na inicialização (verifique a saída de lighttpd -p -f ... ), não há "variáveis" no tempo de execução; somente alguns módulos fornecem manipulação especial de padrões (mod_rewrite, mod_redirect) usando grupos capturados de correspondências de expressões regulares.