没有扩展名在网络上投放图像是否安全?

时间:2010-08-12 00:51:51

标签: image

我将所有* .jpg文件视为静态,但我需要动态提供一些。我可以简单地省略扩展名,这样我就不必对我的网址规则感到满意吗?仅在标题中设置文件类型是否足够?

2 个答案:

答案 0 :(得分:10)

我从来没有遇到过使用奇怪扩展或根本没有扩展的动态图像的问题。 Querystrings也很好。

标题正确并且二进制文件正确形成就足够了。执行此操作时,请确保还将Content-Disposition设置为合理的文件名,以便人们不要尝试使用疯狂的查询字符串名称下载文件。 (哪些Windows用户将无法保存,因为他们很可能在其中有“?”。)

答案 1 :(得分:3)

不是省略扩展(在您的服务器上),而是激活内容协商(如果您使用的是Apache,则为+MultiViews)并省略URI中的扩展名。这样,Apache将决定要提供什么文件;您可以使用pngsvg格式的图片,并提供浏览器接受的图片。

通常,正确的Content-type标题就足够了。