PNG files with uppercase extensions return 404 errors in AEM Assets
Adobe Experience Manager (AEM) Assets may return 404 Not Found for published PNG assets with uppercase file extensions when accessed through Dispatcher because its filter rules treat extensions as case-sensitive and may allow only lowercase extensions. Although the assets remain available in the DAM, the filter blocks requests with uppercase extensions. To resolve the issue, standardize asset filenames with lowercase extensions or update the Dispatcher filter rules to allow both lowercase and uppercase PNG extensions.
Description description
Environment
Adobe Experience Manager (AEM) Assets (all versions and deployment models using Dispatcher)
Issue/Symptoms
When assets with lowercase and uppercase PNG file extensions, such as asset1.png and asset1.PNG, are uploaded to AEM Assets and referenced in AEM Screens channels or other components, the following symptoms occur:
- In the Author environment, both
.pngand.PNGassets are accessible and return HTTP 200 OK. - In the Publish environment accessed through Dispatcher, requests for
.pngassets return HTTP 200 OK. - Requests for
.PNGassets return HTTP 404 Not Found, even though the assets are published and available in the DAM.
Root cause
The Dispatcher filter treats file extensions as case-sensitive. By default, its filter rules may allow only lowercase extensions, such as .png. Requests for assets with uppercase extensions, such as .PNG, are blocked unless the filter rules explicitly allow them, resulting in HTTP 404 Not Found errors.
Resolution resolution
To resolve the issue, use one of the following approaches:
Standardize asset file extensions (recommended)
- Ensure that all uploaded asset filenames use lowercase extensions, such as
.pnginstead of.PNG. - Communicate this naming convention to content authors and relevant teams to prevent the issue from recurring.
Update the Dispatcher filter rules
- Locate the Dispatcher configuration directory and open the filter rules configuration file.
- Add or update a rule to allow both
.pngand.PNGextensions for the relevant DAM path. - Save the changes to the configuration file.
- Test the configuration in a test environment and confirm that both
.pngand.PNGassets are accessible. - Deploy the updated configuration to the live environment.
- Flush the cache to ensure that the changes take effect.
- Verify that assets with both
.pngand.PNGextensions are accessible through the Publish environment.