Skip to content

URLMAP_FALLTHROUGH no longer functional #33062

@jdcmsd

Description

@jdcmsd

Problem Statement

The expected behavior for this variable is as follows:

  1. If it's set to true (default), then 404s will behave the same way for all patterns
  2. If false, then URL-mapped detail pages will still match their patterns, even when they don't have a contentlet corresponding to the input (i.e., each detail page will have to handle its own 404 case)

Mark Pitely observes that DOT_URLMAP_FALLTHROUGH appears not to do anything:

I put in the following in the Config Overrides in the Maintenance/System Info:
DOT_URLMAP_FALLTHROUGH false
But it doesn’t work at all. I just get ‘404’ (/inventory/kawasaki renders, but /inventory/kasasaki goes to a 404 page.)
I did restart the entire system after putting in the Config Override.

I tested this on Demo and can confirm that setting it to false resulted in no behavior changes.

Curiously, if I set URLMAP_FALLTHROUGH false, without the DOT_ prepend, I DID notice a change in behavior, but it was not the expected one: Now, the built 404 page was no longer being used anywhere on the site, irrespective of URL pattern.

Even after I remove the variables from maintenance pane (and confirm via the System Table endpoints that they were indeed deleted), the old behavior never resumes. Tried restarting demo, flushing cache, etc. So, there's something very odd going on with this variable!

Steps to Reproduce

  1. Open a local test instance with the demo site
  2. Go to any blog page
  3. add some random characters to the slug to see the 404 page
  4. try a non-blog 404, such as /asdfjkl
  5. note the similarity
  6. go to Settings -> Maintenance -> System Info -> Config Overrides (at the bottom)
  7. Enter key DOT_URLMAP_FALLTHROUGH and value false
  8. Restart demo via Maintenance -> Tools
  9. note the earlier links look the same
  10. Now try URLMAP_FALLTHROUGH with value false
  11. Restart, try again
  12. Things may look different!
  13. Remove the variables, restart again
  14. links still result as if in 12

(Note also that the only place in the codebase that I can find "URLMAP_FALLTHROUGH" is in the config.properties file, and the blame indicates that was last changed ~13 years ago.)

Acceptance Criteria

DOT_URLMAP_FALLTHROUGH should behave as indicated at the beginning of this issue's problem statement.

dotCMS Version

dotcms-core 25.08.20-01 (August 20, 2025 5:58 PM)

Proposed Objective

Quality Assurance

Proposed Priority

Priority 3 - Average

External Links... Slack Conversations, Support Tickets, Figma Designs, etc.

https://community.dotcms.com/t/urlmap-pattern-description-fallthrough/226

Assumptions & Initiation Needs

No response

Quality Assurance Notes & Workarounds

No response

Sub-Tasks & Estimates

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions