I need to be able to have a subdirectory of images all PNG's to be downloaded instead of opened in the browser window. I am using IIS for the web server.
Is there a way to force a PNG to be downloadable?
As the other posters have said, you need to add the HTTP Content-Disposition header, with a value of attachment, to the HTTP response generated by IIS when serving the PNGs in question.
Not sure what version of IIS you using are but:
IIS6
For IIS7:
Alternatively, place this web.config in the folder with files:
<?xml version="1.0"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="Content-Disposition" value="Attachment" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
This should force the PNGs served from that directory to be downloadable.
You can't if you directly serve the PNGs, but if you use ASP, you can add:
Response.AddHeader("Content-Disposition", "attachment");
You have to send this header to the browser:
Content-Disposition:attachment; filename="downloaded.pdf"
I have no clue on how to do this using IIS.
All solutions I have tried make it so that it'll download in other browsers except IE. IE is trying to be "helpful" and decides what it thinks would best server the client, in this case is display the png file in the browser.
There is always the programatic way of doing this as been pointed out. But I wasn't looking to go that route.
In the end I individually zipped up the 67 PNG files and linked to those. It's not pretty but it works.
Thanks all for the help.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With