Я прочитал это URL-адреса изображений без расширений обычно приемлемы с правильным набором заголовка типа содержимого.
Однако, если сценарий генерирует выходные данные изображения и устанавливает тип содержимого, но URL-адрес в теге изображения .php
например, будет ли любой браузер отклонять запрос как потенциально вредоносный?
Например:
<?php
// myimage.php
header( 'Content-Type: image/jpeg' );
echo read_file_contents( 'someimage.jpg.in' );
а также
<img src="myimage.php" />
Нет — браузер не будет отклонять запрос как потенциально вредоносный.
Заголовок ответа, определяющий тип контента, важен для этого подхода.
Два примера:
Многие финансовые сайты используют этот подход для динамического создания своих биржевых диаграмм (но большинство из них перешли на решения JS).
Логотип официального сайта PHP отображается таким образом.
http://php.net/images/logo.php
Заголовок ответа содержит «Content-Type: image / png».
И это исходный код для этого: https://github.com/php/web-php/blob/master/images/logo.php
Расширение файла не имеет отношения к браузеру. Содержание определяется типом пантомимы.
По моему опыту, на многих сайтах без проблем использовались MP3-файлы, изображения и многие другие файлы в формате «.php».