Baixe o app para aproveitar ainda mais
Prévia do material em texto
Instalando Apache2 + PHP 5 + MySQL 4 + PostgreSQL 8 Almir Mendes - m3nd3s almir@guses.com.br 28 de junho de 2005 Olá pessoal, este é o meu primeiro artigo para a comunidade Linux. Sou desenvolvedor em PHP e trabalho em uma empresa de desenvolvimento de web- sites e implantação de intranets. Não falarei muito sobre os aplicativos aqui utilizados, apenas mostrarei o processo de instalação que é foco deste artigo. 1 Antes do Começar Amigos, vale lembrar que este softwares (Apache, PHP, MySQL) estão presentes nos CDs de instalação do Slackware, no formato padrão de pacotes .TGZ. Todos sabem que no ”mundo”open-source os softwares são atualizados constantemente, seja para correções de bugs, correções de segurança ou para melhoramentos do próprio software. O formato mais comum disponibilizado para download é próprio fonte, onde deverá ser feita a compilação do software para poder utilizá- lo. De certa forma, a compilação trará uma série de benef́ıcios. A primeira delas e a mais importante na minha opinião, será o conhecimento que você irá adquirir ao estar mais ı́ntimo do seu sistema e sendo ”forçado”1 a ler a documentação, artigos e tutoriais para saber como instalar esse software. Não podemos esquecer da opção de uma instalação customizada, do jeitinho que você necessita. As versões destes softwares inclusas nos CDs são: Apache 1.3.33, PHP 4.3.10, MySQL 4.0.23, o PostgreSQL não está dispońıvel no CD do Slackware(mais um motivo para você aprender como instalar softwares a partir dos fontes). Para um maior controle dos aplicativos instalados em seu Slackware, é acon- selhável o uso do aplicativo checkinstall2 substituindo a forma convencional de instalação, make install. O checkinstall gera um pacote .tgz para o aplicativo instalando-o em seguida. Desta forma, a manutenção do aplicativo no seu sistema pode ser feita com as ferramentas do pkgtool, que é o padrão no Slackware. Então, todas as vezes que aparecer o comando make install você poderá troca-lo por: checkinstall -Sy. 1Se for uma pessoa curiosa vai querer saber o porque de cada comando na instalação, como eu faço! 2http://checkinstall.sourceforge.net 1 2 Adquirindo os fontes Abaixo estão as versões dos programas utilizados durante a confecção deste texto e suas respectivas sites para download : • Apache 2.0.53 - www.apache.org • PHP 5.0.4 - www.php.net • MySQL 4.0.24 - www.mysql.com • PostgreSQL 8.0.2 - www.postgresql.org 3 Instalação Esse tutorial foi constrúıdo no GNU/Linux Slackware 10.1, kernel 2.4.29, embora este autor não veja problemas ao efetuar estes procedimentos de instalação em outras versões do Slackware ou até mesmo em outras distros(a não ser por uma diferença no comando checkinstall). 3.1 Apache Embora a instalação do Apache(e da maioria dos softwares) possa ser feita pelos comandos $ ./configure && make && make install! é aconselhável a leitura dos arquivos README e INSTALL, que vêm junto nos pacotes tar.gz ou tar.bz2. A maioria dos usuários não lêem estes arquivos e acabam tendo problemas na instalação. O primeiro passo é descompactar o arquivo tar.gz em algum diretório. Normalmente o faço na pasta /tmp e depois de executar todos os passos para a instalação, removo os arquivos desta pasta (questão de organização). Para identificar entre as operações feitas como super-usuário (root) e como usuário comum, utilizarei os caracteres padrões da linha de comando, como segue a legenda abaixo: $ - Usuário comum # - Super-usuário (root) Vamos à instalação: $ tar zxvfC httpd-2.0.53 /tmp # o ’C’ está aqui para indicar o local para descompactar $ cd /tmp/httpd-2.0.53 $ ./configure --enable-so $ make $ su -c "make install" # ou $ su -c "checkinstall -Sy" para gerar o pacote .tgz O diretório padrão para a instalação do Apache é /usr/local/apache2. Deixarei a configuração do Apache para depois quando for configurar o PHP. Por agora, crie um link simbólico para o aplicativo de controle do Apache: 2 # ln -s /usr/local/apache2/bin/apachectl /usr/sbin/apachectl Para testar se o Apache está funcionando, ainda como root, faça: # apachectl start Caso não retorne mensagem de erro, vá até o navegador de sua preferência (firefox! firefox! firefox!) e digite http://localhost. Se tudo estiver correto, você verá a tela de boas vindas do Apache. Deixando o Apache de lado um pouquinho (pode deixar que voltarei logo, ok! ) passo a instalação dos bancos de dados, começando pelo PostgreSQL. 3.2 PostgreSQL Descompacte o pacote do postgresql, como abaixo: $ tar jxvfC postgresql-8.0.2.tar.bz2 /tmp $ cd /tmp/postgresql-8.0.2 Novamente aconselho que leiam os arquivos README e INSTALL (utilize o comando less). No arquivo INSTALL, você terá todos os passos necessários para uma instalação rápida e também a descrição de cada passo. Deixando de ”fuleragem”, vamos ao que interessa: $ ./configure --enable-nls=’br’ $ su -c "make && make install" Finalizado o processo de instalação, inicie a configuração do PostgreSQL, adicionando uma variável no arquivo profile, utilize o editor que preferir (vim! vim! vim!) e como super-usuário execute os comandos abaixo: LD_LIBRARY_PATH=/usr/local/pgsql/lib PGPATH=/usr/local/pgsql Em seguida adicionaremos o usuário postgres. Este pode ser um usuário comum e é necessário para inicializar o PostgreSQL. Se achar necessário, defina uma senha para ele, mas NÃO a esqueça :) # adduser postgres Agora, criaremos a pasta para armazenar os bancos de dados: # mkdir /usr/local/pgsql/data # chown postgres /usr/local/pgsql/data # su - postgres $ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/ Agora, inicializaremos o PostgreSQL: $ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data & Criando um banco de dados: 3 $ cd /usr/local/pgsql $ ./bin/createdb testdb $ CREATE DATABASE Acessando o banco de dados criado: $ ./bin/psql testdb Você verá algo como: Welcome to psql 8.0.2, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit Pressione ”\q”para sair. Terminado a instalação do PostgreSQL, passo agora para a instalação do MySQL. 3.3 Mysql O processo utilizado para a instalação do MySQL neste texto é baseada em um pacote que já vem compilado e pronto para rodar... Então apenas descompacte o arquivo em /usr/local/mysql e execute os comandos para criação do usuário e do banco de dados, como segue abaixo: # tar zxvfC mysql-standard-4.0.21-pc-linux-i686.tar.gz /usr/local # mv /usr/local/mysql-standard-4.0.21-pc-linux-i686 /usr/local/mysql # cd /usr/local/mysql # groupadd mysql \# Caso você n~ao tenha o usuário mysql # useradd -g mysql mysql # scripts/mysql\_install\_db \-\-user=mysql # chown -R root . \# atenç~ao para o ponto aqui garotinho # chown -R mysql data # chown -R mysql . 3.4 Instalando e configurando o PHP Vamos agora para o nosso amigo PHP. Siga os passos abaixo: # ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-zlib \ --with-bz2 --enable-calendar --enable-ftp --with-gd --with-mysql=/usr/local/mysql \ --with-pgsql=/usr/local/pgsql Aqui, o PHP está sendo compilado como um módulo do Apache. Foram habilitadas as extensões para compactação zlib e bz2, suporte a ftp e a biblioteca GD e aos bancos de dados MySQL e PostgreSQL. Caso você queira algo a mais, dê uma olhada no help e nas opções de configurações. Para isso execute o comando ./configure --help. 4 # make # make install # ou utilize o "checkinstall -Sy" Vamos copiar o arquivo de configuração do PHP para a pasta /usr/local/lib # cp php.ini /usr/local/lib/php.ini Agora, editaremos o arquivo php.ini para confirmarmos ou alterarmos as seguintes configurações: register_globals = Off # Adicione aqui o tamanho máximo de upload de arquivos em MB upload_max_filesize = 10M # Adicione aquio tamanho máximo de upload de arquivos em MB post_max_size = 10M Conforme prometido, agora voltaremos ao arquivo de configuração do Apache para configurá-lo. Utilize o editor de sua preferência e edite o arquivo /usr/local/apache2/conf/httpd.conf. Além de incluir as diretivas para ro- dar o php, também costumo alterar o local onde ficarão minhas páginas. Então vamos lá! Definindo a pasta onde ficarão seus arquivos/sites: DocumentRoot "/var/www/" Para adicionar as diretivas do PHP, adicione a linha abaixo, próximo da linha # Dynamic Shared Object (DSO) Support: LoadModule php5_module modules/libphp5.so Procure a linha onde está AddType application/x-gzip .gz .tgz e adi- cione logo abaixo: Addtype application/x-httpd-php .php .php3 .phtml Esta linha acima indica as extensões utilizadas pelo PHP. Pronto, a configuração está feita. Para que as alterações realizadas ten- ham efeito, execute o comando apachectl restart (caso esteja com o Apache rodando) ou apachectl start (caso esteja parado). 4 Fim Amigos, foi fácil, não... Caso tenham sugestões, cŕıticas (mas só as construtivas!! :)), por favor, enviem para mim... Vlw pessoal, até a próxima... Agradeço aos meus amigos Janderson e Rudson pela correção do meu texto, graças a eles vocês não estão vendo erros grotescos de português, e também agradeço pela paciência comigo... hehe.. 5
Compartilhar