ConFoo: Call for paper is now Open

Notas de Instalação para o Debian GNU/Linux

Essa seção contem notas e dicas específicas para a instalação do PHP no » Debian GNU/Linux.

Usando APT

Embora você possa apenas baixar o fonte do PHP e compilar por conta própria, usar o sistema de pacotes do Debian e o método mais simples e mais limpo de instalar o PHP. Se você não está familiarizado com compilar software no Linux, essa é maneira de se instalar.

A primeira decisão que você precisa fazer é se você quer instalar o Apache 1.3.x ou o Apache 2.x. Os pacotes correspondentes do PHP são, respectivamente, libapache-mod-php* e libapache2-mod-php*. Os passos abaixo usarão o Apache 1.3.x. Por favor, perceba que, até o fechamento desse documento, não há nenhum pacote oficial do Debian para o PHP 5. Então, o procedimento instalará o PHP4.

O PHP está disponível no Debian como CGI ou CLI também, pelos pacotes php4-cgi e php4-cli. Se você precisar deles, só terá que reproduzia os passos a seguir com o pacote desejado. Outro pacote especial que você pode querer instalar é o php4-pear. Ele contem um instalação PEAR mínima e a ferramenta de linha de comando pear.

Se você precisa de pacotes do PHP mais recentes que os do Debian stable ou se alguns módulos do PHP não se encontram no repositório oficial do Debian, talvez você deva procurar em » http://www.apt-get.org/. Um dos resultados encontrados deve ser » Dotdeb. Esse repositório não-oficial é mantido por » Guillaume Plessis e contem pacotes Debian das versões mais recentes do PHP 4 e 5. Para usá-lo, apenas adiciona as seguintes linhas ao seu arquivo /etc/apt/sources.lists e execute apt-get update :

Exemplo #1 Adicionando o repositório Dotdeb

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

A última coisa a ser considade é se sua lista de pacotes está atualizada. Se você não atualizou recentemente, você precisa executar apt-get update antes de qualquer coisa. Dessa forma, você estará usando a versão estável mais recente dos pacotes do Apache e do PHP.

Agora que está tudo no lugar, você pode usar o seguinte exemplo para instalar o Apache e o PHP:

Exemplo #2 Exemplo de Instalação no Debian com o Apache 1.3

# apt-get install libapache-mod-php4

O APT instalará o módulo do PHP 4 para o Apache 1.3 automaticamente, e todas as suas dependências e então ativá-lo. Se o programa não pedir para reiniciar o Apache durante a instalação, você terá que fazê-lo manualmente:

Exemplo #3 Parando e iniciando o Apache depois que o PHP estiver instalado

# /etc/init.d/apache stop
# /etc/init.d/apache start

Maior controle sobre a configuração

Na seção anterior, o PHP foi instalado apenas com os módulos principais. Isso pode não ser o que você quer e você discobrirá em breve que você precisa de mais módulos ativados, como MySQL, cURL, GD, etc.

Quando você compila o PHP do fonte, você precisa ativar os módulos através do comando configure. Com o APT, você só precisa instalar os pacotes adicionais. Todos eles tem o nome 'php4-*' (ou 'php5-*' se você instalou o PHP 5 de um repositório não-oficial).

Exemplo #4 Pegando a lista de pacotes adicionais do PHP

# dpkg -l 'php4-*'

Como você pode ver na saída do comando, existem vários módulos do PHP que você pode instalar (tirando os pacotes especiais php4-cgi, php4-cli ou php4-pear). Olhe com bastante atenção e escolha os que você precisar. Se você escolher um módulo e você não tiver as bibliotecas necessárias, o APT instalará todas as dependências automaticamente para você.

Se você escolher adicionar os módulos do MySQL, cURL e GD, o comando parecerá com esse:

Exemplo #5 Instalar o PHP com MySQL, cURL e GD

# apt-get install php4-mysql php4-curl php4-gd

O APT editará o seu arquivo php.ini (/etc/php4/apache/php.ini, /etc/php4/cgi/php.ini, etc) para dar suporte aos módulos novos.

Exemplo #6 Essas linhas ativam o MySQL, cURL e GD no PHP

extension=mysql.so
extension=curl.so
extension=gd.so

Você só terá que parar/iniciar o Apache como antes para ativar os módulos.

Problemas Comuns

  • Se você ver o código fonte do seus script ao invés do resultado que eles deveriam produzir, o APT provavelmente não incluiu /etc/apache/conf.d/php4 na configuração do Apache. Verifique se a linha está presente no arquivo /etc/apache/httpd.conf e então reinicie o Apache:

    Exemplo #7 Essa linha ativa o PHP 4 no Apache

    # Include /etc/apache/conf.d/
  • Se você instalou um módulo adicional e se as funções desse módulo não estiverem disponíveis nos scripts, verifique que a linha apropriada está presente no seu arquivo php.ini, como visto antes. O APT pode falhar durante a instalação de módulos adicionais, devido a uma configuração confusa do debconf.
add a note add a note

User Contributed Notes 5 notes

up
5
thumbs at apache dot org
1 year ago
To refresh this document, perhaps it would be worth mentioning more modern methods to serve php content under apache httpd.

Specifically, the preferred method is now fastcgi, using either of those recipes:

(mod_fastcgi, httpd 2.2)
http://wiki.apache.org/httpd/php-fastcgi

(mod_fcgid, httpd 2.2)
http://wiki.apache.org/httpd/php-fcgid

(mod_proxy_fcgi, httpd 2.4)
http://wiki.apache.org/httpd/PHP-FPM

While the legacy mod_php approach is still applicable for some older installations, the fastcgi method is much faster, and require much less RAM to operate, based on similar traffic patterns.

Thank you!
up
2
marin at sagovac dot com
5 months ago
To install LAMP stack on Ubuntu (+Server) from 10.04 you need first install taskel and then lamp-server for example:

Install taskel, follow terminal guides:
sudo apt-get install tasksel

Install LAMP stack package from Ubuntu repository:
sudo tasksel install lamp-server
up
1
John Fisher
7 years ago
With Apache2 and Php4 under Debian Sarge there is an extra configuration file :  /etc/apache2/sites-available/default
This file is not clearly documented, at least not for noobs, in Apache docs.

It overrides the conf file in the way you expect the /etc/apache2/conf.d/apache2-doc  to do according to the README.

Add ExecCGI to it to get rid of "Options ExecCGI is off in this directory"  errors.
up
0
juraj at jurajsplayground dot com
5 years ago
On Ubuntu (since 7.04), rather do:
sudo tasksel install lamp-server

Details:
https://help.ubuntu.com/community/ApacheMySQLPHP
up
0
tranzbit at yahoo dot com
5 years ago
On Ubuntu:

sudo apt-get install apache2 php5 mysql-client-5.0 mysql-server-5.0 phpmyadmin libapache2-mod-php5 libapache2-mod-auth-mysql php5-mysql

then restart the computer/start mysql manually
From:
http://ubuntuforums.org/showthread.php?t=186492
To Top