Skip to content

Commit

Permalink
Update Static Content reference documentation to reflect the DefaultS…
Browse files Browse the repository at this point in the history
…ervlet no longer being enabled by default

Closes spring-projectsgh-31792
  • Loading branch information
ionascustefanciprian committed Aug 8, 2022
1 parent 846340a commit d8910b8
Showing 1 changed file with 11 additions and 1 deletion.
Expand Up @@ -87,7 +87,17 @@ If you set the configprop:spring.mvc.message-codes-resolver-format[] property `P
By default, Spring Boot serves static content from a directory called `/static` (or `/public` or `/resources` or `/META-INF/resources`) in the classpath or from the root of the `ServletContext`.
It uses the `ResourceHttpRequestHandler` from Spring MVC so that you can modify that behavior by adding your own `WebMvcConfigurer` and overriding the `addResourceHandlers` method.

In a stand-alone web application, the default servlet from the container is also enabled and acts as a fallback, serving content from the root of the `ServletContext` if Spring decides not to handle it.
In a stand-alone web application, default servlet is not enabled. It can be enabled as follows:


[source,yaml,indent=0,subs="verbatim",configprops,configblocks]
----
server:
servlet:
register-default-servlet: true
----

If the default servlet is enablend it acts as a fallback, serving content from the root of the `ServletContext` if Spring decides not to handle it.
Most of the time, this does not happen (unless you modify the default MVC configuration), because Spring can always handle requests through the `DispatcherServlet`.

By default, resources are mapped on `+/**+`, but you can tune that with the configprop:spring.mvc.static-path-pattern[] property.
Expand Down

0 comments on commit d8910b8

Please sign in to comment.