Package: lighttpd
Version: 1.4.69-1

Summary
===================
Setting a custom port in a config file does not get picked up by the IPV6
module because the custom conf files are included after including
use-ipv6.pl.

Thanks for your work on Debian and on lighttpd specifically. I just use it
for a little personal home server but I appreciate it being available.

To reproduce
===================
1  Note the port configured in lighttpd.conf
$ grep server.port lighttpd.conf
server.port                 = 80
include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port

2. Create a custom config and enable it, overriding the port in
lighttpd.conf
$ grep server.port conf-enabled/99-custom-port.conf
server.port                 := 8080

3. Restart lighttpd

4. Test curl on custom port, ipv4 - works as expected
$ curl -4  localhost:8080
lighttpd served this <---- My index.html file just has this text)

5. Test curl on custom port, ipv6 - unexpectedly fails
$ curl -6  localhost:8080
curl: (7) Failed to connect to localhost port 8080 after 0 ms: Couldn't
connect to server

6. Test curl on lighttd.conf port, ipv6 - unexpectedly works
$ curl -6  localhost:80
lighttpd served this


Issue and suggested fix:
===================
In lighttpd.conf the includes for conf-enabled/*.conf happens after passing
server.port to the use-ipv6.pl script. Re-ordering these lines so that the
conf files are included first allows the server.port value to be
overridden.

include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
include_shell "/usr/share/lighttpd/create-mime.conf.pl"
include "/etc/lighttpd/conf-enabled/*.conf"


System info
===================

x86-64

$lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 12 (bookworm)
Release:        12
Codename:       bookworm

$ uname -r
6.1.0-8-amd64


Thanks,
Michael Moore

Reply via email to