大文字の拡張子を持つPNG ファイルは、AEM Assetsで404 エラーを返します
Adobe Experience Manager(AEM) Assetsでは、Dispatcherを介してアクセスした場合、大文字のファイル拡張子を持つ公開されたPNG アセットに対して 404 Not Found が返される場合があります。これは、フィルタールールで拡張子が大文字と小文字が区別され、小文字の拡張子のみが許可される場合があるためです。 アセットはDAMで引き続き利用可能ですが、フィルターは大文字の拡張子を持つリクエストをブロックします。 この問題を解決するには、アセットファイル名を小文字の拡張子で標準化するか、Dispatcher フィルタールールを更新して、小文字と大文字の両方のPNG拡張子を使用できるようにします。
説明 description
環境
Adobe Experience Manager(AEM)Assets(Dispatcherを使用するすべてのバージョンとデプロイメントモデル)
問題/症状
asset1.pngやasset1.PNGなどの大文字と小文字のPNG ファイル拡張子を持つアセットがAEM Assetsにアップロードされ、AEM Screens チャネルまたはその他のコンポーネントで参照される場合、次の現象が発生します。
- オーサー環境では、
.pngと.PNGの両方のアセットにアクセスでき、HTTP 200 OKを返します。 - Dispatcherを介してアクセスされたパブリッシュ環境では、
.pngアセットのリクエストは HTTP 200 OK を返します。 - アセットが公開され、DAMで利用できる場合でも、
.PNG個のアセットに対するリクエストは HTTP 404 Not Found を返します。
根本原因
Dispatcher フィルターは、ファイル拡張子を大文字と小文字を区別して扱います。 デフォルトでは、フィルタールールでは、.pngなどの小文字の拡張機能のみを使用できます。 .PNGなどの大文字の拡張子を持つアセットのリクエストは、フィルタールールが明示的に許可しない限りブロックされ、HTTP 404 Not Found エラーが発生します。
解決策 resolution
この問題を解決するには、次のいずれかの方法を使用します。
アセットファイル拡張子の標準化(推奨)
- アップロードされたすべてのアセットファイル名で、
.PNGではなく.pngなどの小文字の拡張子が使用されていることを確認してください。 - この命名規則をコンテンツ作成者および関連チームに伝え、問題が再発しないようにします。
Dispatcher フィルタールールの更新
- Dispatcher設定ディレクトリを探し、フィルタールール設定ファイルを開きます。
- 関連するDAM パスの
.pngと.PNGの両方の拡張機能を許可するようにルールを追加または更新します。 - 設定ファイルに変更を保存します。
- テスト環境で設定をテストし、
.pngと.PNGの両方のアセットにアクセスできることを確認します。 - 更新された設定をライブ環境にデプロイします。
- キャッシュをフラッシュして、変更が有効になるようにします。
.pngと.PNGの両方の拡張機能を持つアセットに、パブリッシュ環境からアクセスできることを確認します。