Guia de Instalação do PHP 7.1 no Linux

Instalação do PHP 7.1.26 no Linux

Este guia apresenta o procedimento completo para compilar e instalar o PHP 7.1.26 em distribuições Linux baseadas em Red Hat/CentOS.

  1. Obtenção do Pacote de Instalação

Faça o download do arquivo php-7.1.26.tar.gz no endereço oficial: http://cn2.php.net/downloads.php

  1. Preparação do Diretório de Trabalho

Mova o arquivo baixado para o diretório /root:

# mv php-7.1.26.tar.gz /root/

Acesse o diretório de código-fonte:

# cd /usr/local/src
  1. Extração do Arquivo

Descompacte o arquivo baixado:

# tar -zxvf /root/php-7.1.26.tar.gz

Entre no diretório criado:

# cd php-7.1.26/
  1. Criação do Diretório de Instalação

# mkdir /usr/local/php

Consulte a documentação:

# vim README
  1. Instalação de Dependências

Antes de compilar, instale todas as bibliotecas necessárias para evitar erros:

# yum -y install openssl openssl-devel
# yum -y install curl curl-devel
# yum -y install libjpeg libjpeg-devel
# yum -y install libpng libpng-devel
# yum -y install freetype freetype-devel
# yum -y install pcre pcre-devel
# yum -y install libxslt libxslt-devel
# yum -y install bzip2 bzip2-devel
  1. Configuração da Compilação

Execute o configure com os módulos desejados:

# ./configure --prefix=/usr/local/php \
--with-curl \
--with-freetype-dir \
--with-gd \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \
--with-mysqli \
--with-openssl \
--with-pcre-regex \
--with-pdo-mysql \
--with-pdo-sqlite \
--with-pear \
--with-png-dir \
--with-jpeg-dir \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--with-bz2 \
--with-mhash \
--enable-fpm \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-gd-native-ttf \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-xml \
--enable-zip
  1. Compilação do Código-Fonte

# make
  1. Verificação da Build

# make test

Nota: Alguns warnings podem aparecer durante o teste. Você pode prosseguir mesmo se houver alertas.

  1. Instalação Binária

# make install
  1. Configuração do PHP

Copie os arquivos de configuração para seus locais apropriados:

# cp php.ini-production /usr/local/php/lib/php.ini
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
  1. Configuração de Variáveis de Ambiente

Crie um script para adicionar o PHP ao PATH do sistema:

# vim /etc/profile.d/php.sh

Adicione as seguintes linhas ao final do arquivo:

export PATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/

Salve e saia do editor. Ative as novas variáveis imediatamente:

# source /etc/profile.d/php.sh
  1. Inicialização do PHP-FPM

# /etc/init.d/php-fpm start

Se a mensagem "Starting php-fpm done" for exibida, o serviço foi iniciado com sucesso.

  1. Configuração de Inicialização Automática

# chkconfig --add php-fpm
# chkconfig php-fpm on
# chkconfig --list | grep php-fpm
  1. Verificação da Configuração

# php-fpm -t

O retorno deve ser:

NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test is successful
  1. Gerenciamento via Systemd

# systemctl start php-fpm.service
# systemctl status php-fpm.service
  1. Resolução de Problemas Comuns

Erro: ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98)

Verifique se a porta está em uso:

# netstat -lntup | grep 9000

Para resolver, encerre o processo e reinicie o serviço:

# killall php-fpm
# systemctl start php-fpm.service
# systemctl status php-fpm.service

A instalação foi concluída com sucesso e o PHP-FPM está pronto para uso.

Publicado em 7-1 00:34