#1092·fabio

Fabio v1.7.3 strips fragment from URL (# characters)

Author: froqueCreated Sep 15, 2026Updated Sep 18, 2026
Labelsbugquestion

Fabio 1.7.2

bash
❯ docker run \
    -it \
    --network host \
    fabiolb/fabio:1.7.2 \
        -ui.access=rw \
        -registry.backend=static \
        -registry.static.routes="route add svc /foo http://localhost:8081/" 

❯ curl -v -H 'foo:bar' 'http://localhost:9999/foo/bar/baz%231234567'

❯ nc -kl 8081
GET /foo/bar/baz%231234567 HTTP/1.1
Host: localhost:9999
User-Agent: curl/7.81.0
Accept: */*
Foo: bar
Forwarded: for=127.0.0.1; proto=http; by=172.16.174.170; httpproto=http/1.1
X-Forwarded-For: 127.0.0.1
X-Forwarded-Host: localhost:9999
X-Forwarded-Port: 9999
X-Forwarded-Proto: http
X-Real-Ip: 127.0.0.1
Accept-Encoding: gzip

Fabio 1.7.3

bash
❯ docker run \
    -it \
    --network host \
    fabiolb/fabio:1.7.3 \
        -ui.access=rw \
        -registry.backend=static \
        -registry.static.routes="route add svc /foo http://localhost:8081/"

❯ curl -v -H 'foo:bar' 'http://localhost:9999/foo/bar/baz%231234567'

❯ nc -kl 8081
GET /foo/bar/baz HTTP/1.1
Host: localhost:9999
User-Agent: curl/7.81.0
Accept: */*
Foo: bar
Forwarded: for=127.0.0.1; proto=http; by=172.16.174.170; httpproto=http/1.1
X-Forwarded-For: 127.0.0.1
X-Forwarded-Host: localhost:9999
X-Forwarded-Port: 9999
X-Forwarded-Proto: http
X-Real-Ip: 127.0.0.1
Accept-Encoding: gzip

With Fabio v1.7.2, the application receives requests with %23 ('#') in URL. With Fabio v1.7.3, the application is receiving a partial URL on requests with %23 ('#').