PHP e Apache · 2 min read · Jan 07, 2026

Usando PHP5-FPM Com Apache 2.4 (+ Módulo mod_proxy_fcgi) No Fedora 18 - Página 2

5 Configurando o Apache

Para fazer o Apache 2.4 funcionar com PHP-FPM, podemos usar a diretiva ProxyPassMatch em cada vhost que deve usar PHP-FPM (veja http://wiki.apache.org/httpd/PHP-FPM).

As configurações possíveis são, por exemplo:

ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/path/to/your/documentroot/$1

Isso corresponde (a partir do diretório raiz do documento) a todos os caminhos que contêm .php, opcionalmente seguidos por uma / e qualquer caminho continuado.

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/path/to/your/documentroot/$1

Isso corresponde (a partir do diretório raiz do documento) a todos os caminhos que terminam em .php.

Neste exemplo, quero configurar o vhost padrão que tem o diretório raiz do documento /var/www/html. Ele está definido em /etc/httpd/conf/httpd.conf:

vi /etc/httpd/conf/httpd.conf

Adicione isso em algum lugar perto do final (antes da linha IncludeOptional conf.d/*.conf):

| [...] ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1 [...] |

Certifique-se de usar o diretório raiz do documento correto (/var/www/html neste caso) na diretiva ProxyPassMatch.

Se o mod_php estiver instalado e habilitado, precisamos desativá-lo. Abra /etc/httpd/conf.d/php.conf…

vi /etc/httpd/conf.d/php.conf

… e comente as linhas AddHandler e AddType:

| # # PHP é uma linguagem de script embutida em HTML que tenta facilitar a # escrita de páginas da web geradas dinamicamente para os desenvolvedores. # LoadModule php5_module modules/libphp5.so LoadModule php5_module modules/libphp5-zts.so # # Faz com que o interpretador PHP trate arquivos com a extensão .php. # #AddHandler php5-script .php #AddType text/html .php # # Adicione index.php à lista de arquivos que serão servidos como índices de diretório. # DirectoryIndex index.php # # Descomente a linha a seguir para permitir que o PHP formate arquivos .phps # como código fonte PHP: # #AddType application/x-httpd-php-source .phps |

Reinicie o Apache em seguida:

systemctl restart httpd.service

Agora crie o seguinte arquivo PHP no diretório raiz do documento /var/www/html do vhost padrão do Apache:

vi /var/www/html/info.php

| |

Agora chamamos esse arquivo em um navegador (por exemplo, http://192.168.0.100/info.php):

Como você pode ver, o PHP5 está funcionando, e está funcionando através do FPM/FastCGI, como mostrado na linha Server API. Se você rolar mais para baixo, verá todos os módulos que já estão habilitados no PHP5. O MySQL não está listado lá, o que significa que ainda não temos suporte ao MySQL no PHP5.

6 Obtendo Suporte ao MySQL No PHP5

Para obter suporte ao MySQL no PHP, podemos instalar o pacote php-mysql. É uma boa ideia instalar alguns outros módulos PHP5, pois você pode precisar deles para suas aplicações. Você pode procurar módulos PHP5 disponíveis assim:

yum search php

Escolha os que você precisa e instale-os assim:

yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-magickwand php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy

APC é um cache de opcode PHP gratuito e aberto para armazenar em cache e otimizar o código intermediário PHP. É semelhante a outros caches de opcode PHP, como eAccelerator e Xcache. É altamente recomendável ter um desses instalados para acelerar sua página PHP.

APC pode ser instalado da seguinte forma:

yum install php-pecl-apc

Agora recarregue o PHP-FPM:

systemctl reload php-fpm.service

Agora recarregue http://192.168.0.100/info.php em seu navegador e role para baixo até a seção de módulos novamente. Você deve agora encontrar muitos novos módulos lá, incluindo o módulo MySQL:

7 Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.