- Sim e não. Há sempre um tipo e um manipulador. Se você olhar na documentação para manipuladores , ele afirma:
Generally, files have implicit handlers, based on the file type. Normally, all files are simply served by the server, but certain file types are "handled" separately.
Assim, é provável que você possa configurar manipuladores separadamente do tipo. Como na minha resposta original, parece que é o que o arquivo PHP INSTALL sugere até agora.
-
Se você olhar o link acima, ele será o manipulador padrão chamado, que provavelmente apenas envia o arquivo, pois é o uso mais comum para um servidor da Web.
-
Eu não entendo o que você quer dizer com isso. Se um arquivo tiver uma extensão, mas essa extensão não tiver um tipo mime associado, o tipo mime padrão será usado. Se você olhar para a postagem Como Eu faço todos os tipos de arquivos não reconhecidos como binários no Apache2? o tipo mime padrão deve ser text / plain conforme a documentação sobre o módulo principal .
-
/ Resposta original: Se você está procurando uma fonte sobre como adicionar suporte PHP ao Apache, por que não apenas consultar o arquivo INSTALL incluído no download do PHP?
De acordo com ele para o Apache 2.x com PHP 5.6.25 você usaria SetHandler
.
Agora, se você observar seu exemplo:
AddType text/html .php .phps
AddHandler application/x-httpd-php .php
AddHandler application/x-httpd-php-source .phps
Você está certo de que, de acordo com a documentação do Apache de AddType
deve ser usado para arquivos estáticos. Usar o AddHandler, por outro lado, pode representar um risco de segurança. Pelo menos não é recomendado pelo arquivo INSTALL do PHP e ele menciona especificamente que um AddType puro pode levar a arquivos sendo executados que na verdade não são realmente arquivos PHP. Do ponto de arquivo INSTALL 8 para o Apache 2.x:
Tell Apache to parse certain extensions as PHP. For example, let's have Apache parse .php files as PHP. Instead of only using the Apache AddType directive, we want to avoid potentially dangerous uploads and created files such as exploit.php.jpg from being executed as PHP. Using this example, you could have any extension(s) parse as PHP by simply adding them. We'll add .php to demonstrate.
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
Se você examinar a documentação sobre AddHandler
/ SetHandler
, ficará claro que o AddHandler e o SetHandler serviria a propósitos ligeiramente diferentes e que a sugestão do arquivo INSTALL "encorajaria" você a enviar seus próprios cabeçalhos à medida que o manipulador interno principal dos arquivos php mudasse.
- Não, isso significa que o tipo mime padrão que é enviado para o cliente seria text / html, já que é muito provável que os arquivos php gerem saída html.