- И да и нет. Всегда есть тип и обработчик. Если вы посмотрите на документацию для обработчиков, там говорится:
Как правило, файлы имеют неявные обработчики, основанные на типе файла. Обычно все файлы просто обслуживаются сервером, но некоторые типы файлов обрабатываются отдельно.
Таким образом, вполне вероятно, что вы можете настроить обработчики отдельно от типа. Как и в моем первоначальном ответе, похоже, что это то, что сейчас предлагает файл PHP INSTALL.
Если вы посмотрите на приведенную выше ссылку, то будет вызван обработчик по умолчанию, который, вероятно, просто отправляет файл, так как он наиболее часто используется для веб-сервера.
Я не понимаю, что вы подразумеваете под этим. Если файл имеет расширение, но это расширение не имеет ассоциированного типа mime, используется тип mime по умолчанию. Если вы посмотрите на пост Как я могу сделать все нераспознанные типы файлов двоичными в Apache2? тип MIME по умолчанию должен быть text / plain согласно документации о модуле ядра .
/ Оригинальный ответ: Если вы ищете источник о том, как добавить поддержку PHP в Apache, почему бы просто не обратиться к файлу INSTALL, включенному в загрузку PHP?
В соответствии с этим для Apache 2.x с PHP 5.6.25 вы бы использовали SetHandler
.
Теперь, если вы посмотрите на свой пример:
AddType text / html .php .phps
Приложение AddHandler / x-httpd-php .php
Приложение AddHandler / x-httpd-php-source .phps
Вы правы, что согласно документации Apache AddType
его следует использовать для статических файлов. Использование AddHandler с другой стороны может представлять угрозу безопасности. По крайней мере, это не рекомендуется для файла INSTALL из PHP, и в нем особо упоминается, что чистый AddType может привести к выполнению файла, который на самом деле не является PHP-файлом. Из пункта 8 файла УСТАНОВКА для Apache 2.x:
Скажите Apache для анализа определенных расширений как PHP. Например, давайте сделаем так, чтобы Apache анализировал файлы .php как PHP. Вместо того, чтобы использовать только директиву Apache AddType, мы хотим избежать выполнения потенциально опасных загрузок и создания файлов, таких как exploit.php.jpg, как PHP. Используя этот пример, вы можете иметь любое расширение (я), анализирующее как PHP, просто добавляя их. Мы добавим .php для демонстрации.
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
Если вы посмотрите на документацию о AddHandler
/, SetHandler
станет ясно, что AddHandler и SetHandler будут служить несколько иным целям, и что предложение из файла INSTALL будет «побуждать» вас отправлять свои собственные заголовки, поскольку изменится внутренний основной обработчик для файлов php.
- Нет, это означает, что типом mime по умолчанию, отправляемым клиенту, будет text / html, поскольку весьма вероятно, что php-файлы генерируют html-вывод.