Before reporting an issue
Area
core
Describe the bug
After upgrading Keycloak from 26.3.4 to 26.4.7, I started to see the following errors in the log:
Jan 07 11:47:52 keycloak1 keycloak[234996]: 2026-01-07 09:47:52,920 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-11) Uncaught server error: java.lang.RuntimeException: java.net.URISyntaxException: Expected authority at index 8: https://
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.server.jaxrs.LocationUtil.getUri(LocationUtil.java:34)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.server.jaxrs.UriInfoImpl.getBaseUri(UriInfoImpl.java:124)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.server.jaxrs.UriInfoImpl.getBaseUriBuilder(UriInfoImpl.java:129)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.url.HostnameV2Provider.getFrontUriBuilder(HostnameV2Provider.java:99)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.url.HostnameV2Provider.getUri(HostnameV2Provider.java:73)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.url.HostnameV2Provider.getScheme(HostnameV2Provider.java:134)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.models.KeycloakUriInfo.<init>(KeycloakUriInfo.java:51)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.services.DefaultKeycloakContext.getUri(DefaultKeycloakContext.java:93)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.services.DefaultKeycloakContext.getUri(DefaultKeycloakContext.java:100)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.services.resources.WelcomeResource.getWelcomePage(WelcomeResource.java:88)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.keycloak.services.resources.WelcomeResource$quarkusrestinvoker$getWelcomePage_88e9d8d2443c979657fafa960095f3dcca00c556.invoke(Unknown Source)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:183)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at io.quarkus.vertx.core.runtime.VertxCoreRecorder$15.runWith(VertxCoreRecorder.java:645)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2651)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2630)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1622)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1589)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:11)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:11)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.lang.Thread.run(Thread.java:1583)
Jan 07 11:47:52 keycloak1 keycloak[234996]: Caused by: java.net.URISyntaxException: Expected authority at index 8: https://
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.net.URI$Parser.fail(URI.java:2995)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.net.URI$Parser.failExpecting(URI.java:3001)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.net.URI$Parser.parseHierarchical(URI.java:3245)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.net.URI$Parser.parse(URI.java:3196)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at java.base/java.net.URI.<init>(URI.java:807)
Jan 07 11:47:52 keycloak1 keycloak[234996]: at org.jboss.resteasy.reactive.server.jaxrs.LocationUtil.getUri(LocationUtil.java:32)
Jan 07 11:47:52 keycloak1 keycloak[234996]: ... 22 more
I traced the root cause to be a call to Keycloak without Host header.
I know that Host header should be configured, but calls without it shouldn't flood the logs with this information.
Version
26.4.7
Regression
Expected behavior
Nothing should be returned to the client and no logs should be produced.
Actual behavior
The client gets a response:
{"error":"unknown_error","error_description":"For more on this error consult the server log."}
And uncaught error is written into server log.
How to Reproduce?
Works as expected:
curl https://keycloak1.my.tld
Triggers the issue described:
curl -H "Host:" https://keycloak1.my.tld
{"error":"unknown_error","error_description":"For more on this error consult the server log."}
Anything else?
No response
Before reporting an issue
Area
core
Describe the bug
After upgrading Keycloak from 26.3.4 to 26.4.7, I started to see the following errors in the log:
I traced the root cause to be a call to Keycloak without Host header.
I know that Host header should be configured, but calls without it shouldn't flood the logs with this information.
Version
26.4.7
Regression
Expected behavior
Nothing should be returned to the client and no logs should be produced.
Actual behavior
The client gets a response:
{"error":"unknown_error","error_description":"For more on this error consult the server log."}And uncaught error is written into server log.
How to Reproduce?
Works as expected:
curl https://keycloak1.my.tld
Triggers the issue described:
curl -H "Host:" https://keycloak1.my.tld
{"error":"unknown_error","error_description":"For more on this error consult the server log."}
Anything else?
No response