Instalando PHP5 em Linux
Instalando PHP5 (Linux)
Por Sergio A. Pohlmann - spohlmann@softhome.net
Em outro artigo, comentava sobre a versão de desenvolvimento do PHP5. A própria Zend aconselha que não se utilize esta versão em ambientes de produção, já que ainda está em testes, e obviamente, tem muito que ser corrigida até ser totalmente estável.
Assim que, esta compilação não é aconselhável para os que sofrem de eventuais distúrbios cardíacos ;)
Mas, para os curiosos de plantão (como eu, que não resistí a tentação de compilá-lo e colocá-lo em meu server, arriscando ter que voltar ao meu velho 4.1), aí vai a dica de como compilar, para Linux:
Observação:
Meu Linux é um Conectiva Linux 7.0. Experimentei compilar tanto sob kernel 2.2, quanto 2.4, e funcionou perfeitamente, nos dois ( respectivamente, 2.2.19-15cl, e 2.4.5-9cl). Evidentemente, podem haver diferenças inirentes a cada distribuição, ou a configurações específicas de cada caso.
Também estou presumindo que você já tem um php instalado, o que significa que seu Apache já foi corretamente configurado. Se não é o seu caso, dê uma buscada na phpbrasil, para ver como preparar tudo, em outros artigos.
Primeiro, obviamente, tens que fazer o download do arquivo. Busque a versão mais nova no espelho de CVS da Zend:
http://snaps.php.net/
O arquivo vai vir com um nome estranho, que depende do dia e hora da atualização. No meu caso foi
"php5-200303021830.tar.gz" (o número significa que foi posto no CVS às 18:30 do dia 02 de março deste ano).
*Claro que todas as operações tem que ser feitas como root :)
Agora, colocamos o arquivo no diretório /usr/src (os fontes, mas os mais desavisados). E descomprimimos com o velho:
# tar -xvzf php5-200303021830.tar.gz
Fabricamos um link simbólico, independente de versão:
# ln -s php5-200303021830 php5
Pronto. Agora temos um diretório php5, que aponta para a versão que baixamos. Vamos ao difícil:
# cd php5
Preparando a compilação.
Dependendo de sua máquina, pode demorar. Em meu super-servidor (Pentium 75), o processo todo ( configure e make) tardou mais de uma hora :(
# ./configure --with-mysql --with-apxs
Aqui estamos preparando para a compilação, propriamente dita. As opções que estou usando não tem nada de especiais, e, obviamente, quem usa mais opções de configuração terá que inseri-las aí, na linha correspondente.
-----------------------------------------------------
Observação:
Também, se usas muitas opções, poderia gerar um arquivo qualquer (digamos que se chame "compilar"), e colocar, aí:
./configure \
--with-mysql \
--with-apxs \
... \
... \
Obviamente, no lugar dos pontinhos, vão as opcões desejadas. Por fim. executar o arquivo com:
# sh compilar
-------------------------------------------------
Agora, a compilar.
# make
# make install
Bom, a compilação já está feita!!! Agora, é a vez de terminar de configurar o Apache.
Copie o php.ini-dist para o local correto, com o nome de php.ini. No meu caso, está em /etc/php4/cgi e /etc/php4/apache.
* Claro que você vai fazer cópia dos originais, antes, né?
# cp php.ini-dist /etc/php4/cgi/php.ini
# cp php.ini-dist /etc/php4/apache/php.ini
Agora, mate e levante de novo o demônio httpd. Não o reinicie, porque pode não funcionar. Mate-o, e faça com que levante de novo:
# /etc/rc.d/init.d/httpd stop
# /etc/rc.d/init.d/httpd start
Uma das coisas que lhe pode passar, é que, no arquivo /etc/httpd/conf/httpd.conf, a linha de LoadModule esteja com um erro de path. Normalmente o httpd vai avisar do erro, na hora de levantá-lo. Se for o seu caso, altere a linha para o path correto. No meu caso estava:
LoadModule php4_module lib/apache/libphp4.so
e tive que trocar para:
LoadModule php4_module /usr/lib/apache/libphp4.so
E, como sabemos? Verifique onde está o libphp4.so, aí citado. Eu uso "locate" ou "find".
Por fim, se o seu httpd já levanta, sem problemas, então já pode provar o seu novo PHP5. Um scriptzinho, como o de abaixo, serve (eu o chamo de test.php, no diretório principal de meu apache: /home/httpd/html):
Agora, abra o test.php com um navegador, e, se tudo está bem, você deverá ver, feliz, a abertura do phpinfo(), com:
PHP Version 5.0.0-dev
e as demais informações do ambiente. Observe, ao final do primeiro quadro:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.0.0-dev, Copyright (c) 1998-2003 Zend Technologies
Iuhuuuuuuuuu! Funcionou!!!! Agora, pare de babar no teclado, respire fundo, e vá provar seu novíssimo PHP5!!
Abraços a todos.
Por Sergio A. Pohlmann - spohlmann@softhome.net
Em outro artigo, comentava sobre a versão de desenvolvimento do PHP5. A própria Zend aconselha que não se utilize esta versão em ambientes de produção, já que ainda está em testes, e obviamente, tem muito que ser corrigida até ser totalmente estável.
Assim que, esta compilação não é aconselhável para os que sofrem de eventuais distúrbios cardíacos ;)
Mas, para os curiosos de plantão (como eu, que não resistí a tentação de compilá-lo e colocá-lo em meu server, arriscando ter que voltar ao meu velho 4.1), aí vai a dica de como compilar, para Linux:
Observação:
Meu Linux é um Conectiva Linux 7.0. Experimentei compilar tanto sob kernel 2.2, quanto 2.4, e funcionou perfeitamente, nos dois ( respectivamente, 2.2.19-15cl, e 2.4.5-9cl). Evidentemente, podem haver diferenças inirentes a cada distribuição, ou a configurações específicas de cada caso.
Também estou presumindo que você já tem um php instalado, o que significa que seu Apache já foi corretamente configurado. Se não é o seu caso, dê uma buscada na phpbrasil, para ver como preparar tudo, em outros artigos.
Primeiro, obviamente, tens que fazer o download do arquivo. Busque a versão mais nova no espelho de CVS da Zend:
http://snaps.php.net/
O arquivo vai vir com um nome estranho, que depende do dia e hora da atualização. No meu caso foi
"php5-200303021830.tar.gz" (o número significa que foi posto no CVS às 18:30 do dia 02 de março deste ano).
*Claro que todas as operações tem que ser feitas como root :)
Agora, colocamos o arquivo no diretório /usr/src (os fontes, mas os mais desavisados). E descomprimimos com o velho:
# tar -xvzf php5-200303021830.tar.gz
Fabricamos um link simbólico, independente de versão:
# ln -s php5-200303021830 php5
Pronto. Agora temos um diretório php5, que aponta para a versão que baixamos. Vamos ao difícil:
# cd php5
Preparando a compilação.
Dependendo de sua máquina, pode demorar. Em meu super-servidor (Pentium 75), o processo todo ( configure e make) tardou mais de uma hora :(
# ./configure --with-mysql --with-apxs
Aqui estamos preparando para a compilação, propriamente dita. As opções que estou usando não tem nada de especiais, e, obviamente, quem usa mais opções de configuração terá que inseri-las aí, na linha correspondente.
-----------------------------------------------------
Observação:
Também, se usas muitas opções, poderia gerar um arquivo qualquer (digamos que se chame "compilar"), e colocar, aí:
./configure \
--with-mysql \
--with-apxs \
... \
... \
Obviamente, no lugar dos pontinhos, vão as opcões desejadas. Por fim. executar o arquivo com:
# sh compilar
-------------------------------------------------
Agora, a compilar.
# make
# make install
Bom, a compilação já está feita!!! Agora, é a vez de terminar de configurar o Apache.
Copie o php.ini-dist para o local correto, com o nome de php.ini. No meu caso, está em /etc/php4/cgi e /etc/php4/apache.
* Claro que você vai fazer cópia dos originais, antes, né?
# cp php.ini-dist /etc/php4/cgi/php.ini
# cp php.ini-dist /etc/php4/apache/php.ini
Agora, mate e levante de novo o demônio httpd. Não o reinicie, porque pode não funcionar. Mate-o, e faça com que levante de novo:
# /etc/rc.d/init.d/httpd stop
# /etc/rc.d/init.d/httpd start
Uma das coisas que lhe pode passar, é que, no arquivo /etc/httpd/conf/httpd.conf, a linha de LoadModule esteja com um erro de path. Normalmente o httpd vai avisar do erro, na hora de levantá-lo. Se for o seu caso, altere a linha para o path correto. No meu caso estava:
LoadModule php4_module lib/apache/libphp4.so
e tive que trocar para:
LoadModule php4_module /usr/lib/apache/libphp4.so
E, como sabemos? Verifique onde está o libphp4.so, aí citado. Eu uso "locate" ou "find".
Por fim, se o seu httpd já levanta, sem problemas, então já pode provar o seu novo PHP5. Um scriptzinho, como o de abaixo, serve (eu o chamo de test.php, no diretório principal de meu apache: /home/httpd/html):
<?php phpinfo(); ?>
Agora, abra o test.php com um navegador, e, se tudo está bem, você deverá ver, feliz, a abertura do phpinfo(), com:
PHP Version 5.0.0-dev
e as demais informações do ambiente. Observe, ao final do primeiro quadro:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.0.0-dev, Copyright (c) 1998-2003 Zend Technologies
Iuhuuuuuuuuu! Funcionou!!!! Agora, pare de babar no teclado, respire fundo, e vá provar seu novíssimo PHP5!!
Abraços a todos.
Sim, realmente é importante observar isto.
Comigo passou de baixar uma versao, e nao houve forma de funcionar. Voltei ao 'snaps' e agarrei a versão mais nova, e aí funcionou tudo ok.
Abraços
Sergio .'.
Comigo passou de baixar uma versao, e nao houve forma de funcionar. Voltei ao 'snaps' e agarrei a versão mais nova, e aí funcionou tudo ok.
Abraços
Sergio .'.
07/11/2003 8:28am
(~21 anos atrás)
Pra quem esta tendo dificuldade
é interessante testar as atualizações
encontradas em
http://snaps.php.net
que são quase que diárias e pode ser que o seu bug já tenha sido reportado e arrumado.
Caso persista envie um email através de
http://bugs.php.net
é interessante testar as atualizações
encontradas em
http://snaps.php.net
que são quase que diárias e pode ser que o seu bug já tenha sido reportado e arrumado.
Caso persista envie um email através de
http://bugs.php.net
07/11/2003 7:13am
(~21 anos atrás)
Tentei instalar ele no Ruindows 98, mais tive problemas em carrega extensões, quando abilito para carregar alguma extensão ou atraves do dl, ele trava e não continua carregando.
Alguem mais teve esse problema e sabe como resolver?
Da pra testar o sistema de OO mais usar Mysql e outras coisas que dependem de extensão, nada feito!
Alguem mais teve esse problema e sabe como resolver?
Da pra testar o sistema de OO mais usar Mysql e outras coisas que dependem de extensão, nada feito!
23/10/2003 11:15am
(~21 anos atrás)
Existe a possibilidade de ele ser instalado em um Ruindows 98 com o xitami?
23/10/2003 8:00am
(~21 anos atrás)
no meu caso nao teve libphp4.so, mas sim libphp5.so, que na propria instalacao do php ele jah adicionou a linha "loadmodule" para ele, porem tive que comentar a linha do "loadmodule" do libphp4, pois sempre ficava com o php-4.3.4rc1
22/10/2003 10:00pm
(~21 anos atrás)
pessoal só pra quem não sabe
antes de compilar digite:
./configure --help
para ver as opcoes
e no PHP5 tem a opção de uma nova library do MySQL que se não me engano é a --with-mysqli
antes de compilar digite:
./configure --help
para ver as opcoes
e no PHP5 tem a opção de uma nova library do MySQL que se não me engano é a --with-mysqli
22/10/2003 5:37am
(~21 anos atrás)
Bem legal seu artigo, principalmente para que não mexe muito no Linux, e bom explicar os detalhes.
No Windows, eu apenas substituiria o php.exe?
No Windows, eu apenas substituiria o php.exe?
21/10/2003 5:14pm
(~21 anos atrás)
no aguardo...