Buscar

Instalando_apache_php_mysql_postgres

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

Continue navegando