某些浏览器会忽略带有 non-image(即脚本)扩展名的图像 URL 吗?

Do some browsers ignore image URLs with non-image (i.e. script) extensions?

我阅读 extensionless image URLs are generally acceptable 时 content-type header 设置正确。

但是,如果脚本生成图像输出并设置内容类型,但图像标签中的 URL 例如 .php 任何浏览器都会拒绝该请求作为潜在恶意?

例如:

<?php
// myimage.php
header( 'Content-Type: image/jpeg' );
echo read_file_contents( 'someimage.jpg.in' );

<img src="myimage.php" />

文件扩展名与浏览器无关。由 mime 类型定义的内容。

根据我的经验,在许多网站上以“.php”形式提供 MP3、图像和许多其他文件都没有问题。

否 - 浏览器不会拒绝潜在恶意请求。

定义内容类型的响应header对于此方法很重要。

两个例子: