Configurei o lighttpd 1.4.74 no Ubuntu 24.04 para permitir a navegação em diretórios, via arquivo .conf:
dir-listing.activate="enable"
Eu também tentei
server.dir-listing = "enable"
Ambos parecem me dar os mesmos resultados, onde os links dos arquivos estáticos têm um " /
.". Aqui está um exemplo do conteúdo de um diretório:
E aqui está o que o lighttpd oferece:
Os links para esses arquivos mp3 e jpg funcionam corretamente, mesmo com o erro /
. Mas mesmo com eles funcionando corretamente, preciso fazer com que ele gere o texto do link correto, porque há um processo analisando esses href
valores, e ele pensa que são diretórios.
Vale a pena mencionar que, em outro lugar, tenho um Raspberry Pi rodando Raspbian e lighttpd 1.4.59. Está funcionando corretamente:
O que poderia estar errado no meu novo servidor Ubuntu/lighttpd para causar esses /
caracteres extras?
O problema da barra final anexada aos arquivos foi introduzido como uma regressão no lighttpd 1.4.74.
Relatório de bug upstream nº 3242
Patch a montante
Criei um PPA pessoal do Ubuntu com o patch. Infelizmente, nem eu consigo adicionar meu próprio PPA para que ele me permita instalar o arquivo binário .deb atualizado.
Para contornar esse problema, fiz o seguinte:
Visite
https://launchpad.net/~gedakc/+archive/ubuntu/lighttpd-1.4.74-1ubuntu3-fix-trailing-slash/+build/30604552
Localize o arquivo
lighttpd_1.4.74-1ubuntu3_amd64.deb
e baixe-o.Instale o pacote .deb (assumindo o diretório ~/Downloads)
sudo dpkg -i ~/Downloads/lighttpd_1.4.74-1ubuntu3_amd64.deb
Reinicie o lighttpd
sudo systemctl restart lighttpd
Isso resolveu o problema para mim.