Como adicionar manipuladores de arquivos no Apache2?

2

Mudei um site de outro servidor para o meu e há um arquivo PHP com extensão .ph. Em outro servidor funcionou bem, mas não no novo. Ele apenas tenta baixar o arquivo em questão, em vez de enviá-lo através do analisador PHP.

Obviamente, trata-se de manipuladores de arquivos, então eu preciso adicionar a extensão .ph para ser tratada como arquivo .php. Eu achei que isso era trivial, mas ainda assim não consegui fazê-lo :) De alguma forma, isso mudou no Apache2 e não consigo entender.

Eu tentei definir o manipulador no mime.conf e no /etc/mime.types. Nada até agora.

Devido à complexidade do aplicativo, desejo não ter que alterar a extensão do arquivo. Alguém poderia me apontar para a direção certa? Isso não deveria ser tão difícil assim:)

Estou executando o Apache 2.2.17 e o PHP 5.3.5 no Ubuntu 11.04.

    
por budwiser 15.02.2012 / 07:43

2 respostas

0

O problema parecia ser que eu tinha essa definição no meu arquivo /etc/apache2/mods-available/php5.conf:

<FilesMatch "\.ph(p3?|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>

O padrão regexp esperado seria p3 ou tml terminando em .ph - prefixo.

A correção mais fácil foi adicionar:

<FilesMatch "\.ph$">
    SetHandler application/x-httpd-php
</FilesMatch>

no arquivo. Funciona como um encanto agora.

    
por 15.02.2012 / 08:42
1

tente isso depois de modificar a configuração do mime

service apache2 restart

ou edite seu httpd.conf

Atualizado & testado:

AddHandler type-map var
AddHandler php5-script .ph
AddType text/html .php
    
por 15.02.2012 / 08:09