AEM 6.3 | Apache Sling Content Disposition Filter | Hosting Static HTML in JCR | Community
Skip to main content
neerajg29767140
Level 2
December 8, 2017

AEM 6.3 | Apache Sling Content Disposition Filter | Hosting Static HTML in JCR

  • December 8, 2017
  • 1 reply
  • 7428 views

In AEM 6.2 and 6.3, when we attempt to hit the static content such as (/content/site/static-page.html), it is treated as a binary download and does the same for all other file types(pdf,css, js, images) where response header shows Content-Disposition as an attachment.


In previous versions of AEM (6.1 and below), com.day.cq.dam.core.impl.servlet.SafeBinaryGetServlet was there to control response header to render page instead of download. However from 6.2, this component is  deprecated and the reason is Apache Sling Content Disposition Filter(org.apache.sling.security.impl.ContentDispositionFilter) took precedence and an intended change made in product from AEM 6.2 onward and was introduced as part of Sling Security Fix.


Here we have steps to render static pages:


Apache Sling Content Disposition Filter Configuration where static files needs to be added to meet requirements.



Configuration can be reverted back to render static pages without adding it manually in OSGI by uncheck the checkbox(Enable Content Disposition for all paths) and the file would directly open in the browser instead of getting downloaded.


This is how static content can be hosted in JCR and renders in page.


References:


https://forums.adobe.com/thread/2325852

https://forums.adobe.com/thread/2326458

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

1 reply

joerghoh
Adobe Employee
Adobe Employee
December 8, 2017

There is a reason why this has been implemented that way in the product. It's security.

Of course you can turn it of. You are turning off a security feature of the product. Can you answer the question "are you sure what you are doing, are you aware of consequences and do you accept any negative outcome" with YES? Then go on.

Jörg

neerajg29767140
Level 2
December 9, 2017

I have not asked this as a question, instead posted this in forum.

FYI,
We are using this as a security feature only.

May 15, 2018

Definitely agreed around a security risk, and should be done on the dispatcher level.

Of course it needs to be documented and treated accordingly with controls.

If you are internal facing with a directory, is there a possibility to disable the filter using a wildcard for a subdirectory, or do you need to explicitly name files?


Hi All,

We have the similar issue. We are trying to download the PDf/docx from a AEM community page using File Library component. Wheneven we click on download it shows joson output instead of downloading actual file. It works fine in local host. This is something to do with Dispatcher setting. We have the following filter.  It is still not helping. can someone through a light on this?

<FilesMatch "\.(?i:pdf)|(?i:docx)$">

    ForceType application/octet-stream

    Header set Content-Disposition attachment

</FilesMatch>

Thanks in advance.

-Ramakrishna