Instalando a extensão json para o php-5.1 no CentOS/Red Hat

Hoje me deparei com um problema, em um servidor está instalado a extensão json para o php e em outro servidor não está, um dos servidores é Fedora e o outro é CentOS. Após muitas buscas na internet sobre esse assunto, consegui uma solução que me serviu e ficou funcionando. Solução: pecl (PHP Extension Community Library) e pear (PHP Extension and Application Repository).

[ Hits: 9.822 ]

Por: Jose Carlos Rocha em 03/02/2011


Instalando a extensão json para o php-5.1 no CentOS/Red Hat

Hoje me deparei com um problema, em um servidor está instalado a extensão json para o php e em outro servidor não está, Um dos servidores é Fedora e o outro é CentOS.

Solução: pecl (PHP Extension Community Library) e pear (PHP Extension and Application Repository).

Observação: A versão 5.2 do PHP já vem por padrão com a extensão json.

Passo 1: Dependências do sistema

Precisamos verificar se alguns pacotes utilizados para compilar a extensão json para o php estão instalados, um deles é o gcc e o outro o make, como mostro abaixo:

# rpm -qa |grep gcc
gcc-4.1.2-42.el5
libgcc-4.1.2-42.el5
libgcc-4.1.2-42.el5


# rpm -qa |grep --color make
imake-1.0.2-3
make-3.81-3.el5
automake-1.9.6-2.1


Passo 2: Dependências do PHP

Precisamos verificar se alguns pacotes do php estão instalados, um deles é o php-devel, como mostro abaixo:

# rpm -qa |grep php-devel
php-devel-5.1.6-27.el5_5.3


Passo 3: Download da extensão

Agora que já resolvemos os problemas com as dependências, precisamos baixar a extensão para o php, procedendo da seguinte forma:

# pecl download json-1.2.1.tgz

Passo 4: Instalação da extensão

Agora estamos quase lá, precisamos realizar a instalação da extensão baixada, devemos utilizar o comando abaixo com o parâmetro install seguido da extensão.

# pear install json-1.2.1.tgz

Passo 5: Configurando o PHP

Agora que já instalamos a extensão em nosso sistema, precisamos criar a configuração para carregar a a extensão json com o php, devemos criar um arquivo chamado json.ini, caso ele não exista na pasta /etc/php.d/, como é mostrado abaixo:

# vim /etc/php.d/json.ini

Com o arquivo aberto para edição precisamos colocar uma linha neste arquivo, como a mostrada logo abaixo:

extension=json.so

Passo 6: Reiniciar o Apache

Neste momento o apache ainda esta com as configurações antigas do php.ini e não é isso o que queremos, precisamos reiniciar o servidor Apache para que ele carregue as novas configurações.

Veremos três métodos de reiniciar o apache, a primeira pelo comando service, a segunda pelo script /etc/init.d/httpd e o terceiro pelo apachectl.

Método 1:

# service httpd restart

Método 2:

# /etc/init.d/httpd restart

Método 3:

# apachectl -k restart

Passo 7: phpinfo()

Agora que o apache já foi reiniciado, podemos verificar se o php já está com a extensão carregada.

Vamos criar um arquivo com o nome arquivo.php e dentro deste arquivo utilizaremos a função phpinfo do php. Nosso arquivo deve ficar como mostrado abaixo:

<?php
phpinfo();
?>

Passo 8: Verificar se a extensão está carregada

No passo 7 criamos o arquivo para nos ajudar a verificar se a extensão foi carregada e habilitada, agora vamos verificar se essa extensão foi instalada e configurada corretamente.

Temos duas formas para executar este teste, um é pela linha de comando e o outro é pelo browser, vejamos a primeira forma, via linha de comando:

# php /var/www/html/phpinfo.php | grep json
/etc/php.d/json.ini,
json
json support => enabled
json version => 1.2.1


A outra maneira é acessar a máquina pelo browser, informando o endereço do "arquivo.php", http://localhost/arquivo.php, na saída teremos que pesquisar a string json e deveremos ver a saída como apresentada abaixo:
Linux: Instalando a extensão json para o php-5.1 no CentOS/RedHat
Pronto! Temos nosso php com a extensão json instalada, carregada e habilitada para utilização de nossos programas em php.

Fico por aqui e até a próxima.

   

Páginas do artigo
   1. Instalando a extensão json para o php-5.1 no CentOS/Red Hat
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalação do MediaWiki em uma Project web do SourceForge

Lista de extensões preferidas para Joomla!

Requisições assíncronas em PHP usando AJAX - Parte I

Solução open source para clínicas médicas

O uso de templates em PHP

Comentários
[1] Comentário enviado por everton_fuzz em 08/02/2011 - 08:40h

yum install php-json nao resolveria?


Contribuir com comentário