PHP e Apache · 3 min read · Jan 01, 2026
Usando PHP5-FPM Com Apache2 No OpenSUSE 12.1 - Página 2
6 Configurando o Apache
Para fazer o Apache funcionar com PHP-FPM, precisamos da seguinte configuração:
| |
(Para saber mais sobre a diretiva FastCgiExternalServer, dê uma olhada em http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html#FastCgiExternalServer.)
Você pode colocá-la na configuração global do Apache (então estará habilitada para todos os vhosts), por exemplo em /etc/apache2/conf.d/mod_fastcgi.conf, ou pode colocá-la em cada vhost que deve usar PHP-FPM. Eu quero usar PHP-FPM com todos os vhosts, então abro /etc/apache2/conf.d/mod_fastcgi.conf…
vi /etc/apache2/conf.d/mod_fastcgi.conf… e coloco a seguinte seção no final:
| [...] |
O diretório /usr/lib/cgi-bin/ deve existir, então o criamos da seguinte forma:
mkdir /usr/lib/cgi-bin/Reinicie o Apache em seguida:
systemctl restart apache2.serviceAgora crie o seguinte arquivo PHP na raiz do documento /srv/www/htdocs do vhost padrão do Apache:
vi /srv/www/htdocs/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.
7 Obtendo Suporte ao MySQL No PHP5
Para obter suporte ao MySQL no PHP, podemos instalar o pacote php5-mysql. É uma boa ideia instalar alguns outros módulos do PHP5 também, pois você pode precisar deles para suas aplicações:
yast2 -i php5-mysql php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshmAgora recarregue o PHP-FPM:
systemctl reload php-fpm.serviceAgora 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 do MySQL:

8 phpMyAdmin
phpMyAdmin é uma interface web através da qual você pode gerenciar seus bancos de dados MySQL.
phpMyAdmin pode ser instalado da seguinte forma:
yast2 -i phpMyAdminPara garantir que possamos acessar o phpMyAdmin de todos os sites criados através do ISPConfig mais tarde usando /phpmyadmin (por exemplo, http://www.example.com/phpmyadmin) e /phpMyAdmin (por exemplo, http://www.example.com/phpMyAdmin), abra /etc/apache2/conf.d/phpMyAdmin.conf…
vi /etc/apache2/conf.d/phpMyAdmin.conf… e adicione os seguintes dois aliases logo no início:
| Alias /phpMyAdmin /srv/www/htdocs/phpMyAdmin Alias /phpmyadmin /srv/www/htdocs/phpMyAdmin [...] |
Reinicie o Apache e recarregue o PHP-FPM:
systemctl restart apache2.service
systemctl reload php-fpm.serviceDepois, você pode acessar o phpMyAdmin em http://192.168.0.100/phpMyAdmin/:

9 Fazendo o PHP-FPM Usar um Socket Unix
Por padrão, o PHP-FPM está escutando na porta 9000 em 127.0.0.1. Também é possível fazer o PHP-FPM usar um socket Unix, o que evita a sobrecarga do TCP. Para fazer isso, abra /etc/php5/fpm/php-fpm.conf…
vi /etc/php5/fpm/php-fpm.conf… e faça a linha listen ficar assim:
| [...] ;listen = 127.0.0.1:9000 listen = /tmp/php5-fpm.sock [...] |
Além disso, defina o proprietário, grupo e permissões do socket da seguinte forma:
| [...] ; Defina permissões para o socket unix, se um for usado. No Linux, permissões de leitura/escrita ; devem ser definidas para permitir conexões de um servidor web. Muitos ; sistemas derivados do BSD permitem conexões independentemente das permissões. ; Valores Padrão: usuário e grupo são definidos como o usuário em execução ; modo é definido como 0666 listen.owner = nobody listen.group = nobody listen.mode = 0666 [...] |
Então recarregue o PHP-FPM:
systemctl reload php-fpm.serviceEm seguida, passe pela sua configuração do Apache e todos os seus vhosts e mude a linha FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization para FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization, por exemplo, assim:
vi /etc/apache2/conf.d/mod_fastcgi.conf| [...] |
Finalmente, recarregue o Apache:
systemctl reload apache2.service10 Links
- Apache: http://httpd.apache.org/
- Módulo Apache mod_fastcgi: http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html
- PHP: http://www.php.net/
- PHP-FPM: http://php-fpm.org/
- MySQL: http://www.mysql.com/
- OpenSUSE: http://www.opensuse.org/
- phpMyAdmin: http://www.phpmyadmin.net/
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.