Прежде всего, извините, если вопрос неясен из-за моих плохих знаний.
Мне интересно узнать , как apache вызывает соответствующий движок / инициатор для обслуживаниязапрос .Предположим, пользователь запрашивает http://somesite.com/someurl.php
- теперь, как apache определяет, что ему нужно запустить интерпретатор PHP?Apache определяет это на основании расширения файла / MIME-типа или чего-то еще?
Что я знаю: я могу настроить apache для вызова определенных интерпретаторов на основе расширения файла, например:
AddHandler cgi-script .cgi .py
# Tells apache to treat .cgi & .py files to treat as cgi scripts
Почему меня это беспокоит?Недавно я узнал из своего вопроса ( Загрузка файла PHP: проверка на основе mime или расширения? ), что если какой-либо пользователь загружает файл с неправильным типом MIME (например, image/jpeg
), но с расширением .php
файл может быть запущен (при условии, что у него есть разрешение на выполнение), а вредоносный php-код, включенный в метаданные EXIF, может совершать вредоносные действия.