Nesse pequeno tutorial vamos aprender a instalar e configurar de maneira básica um servidor Web na plataforma Linux (baseado no CentOS 5). Note que trata-se de material inédito, que será de grande valia para muitos que, como eu, precisam fazer isso e não encontram materiais disponíveis na web. Mãos à obra!
1) Abra o shell e logue como root:
No CentOS e Fedora o pacote chama-se httpd;
2) Instalando o Apache:
# yum install httpd
Após a instalação, é necessário rodar o comando chkconfig para que ele seja ativado no boot:
# chkconfig httpd on
3) Para iniciar o serviço temos duas opções de comandos:
# service httpd start
OU
# /etc/init.d/httpd start
start: Inicia o serviço
stop: Para o serviço
restart: Para e inicia o serviço
reload: Apenas atualiza a configuração, sem para o serviço.
Após iniciar o serviço, abra o navegador e digite, para testar o serviço:
http://127.0.0.1
Se for carregada a página inicial do APACHE, significa que a instalação foi concluída com sucesso!
Todas as configurações do Apache no CentOS e Fedora ficam no arquivo:
/etc/httpd/conf/httpd.conf
Os sites ficam concentrados dentro do diretório:
/var/www/html/
4) Instalando o suporte a PHP:
# yum install php
5) Instalando o módulo PHP para fazer a junção com Postgresql:
# yum install php-pgsql
Para que as alterações entrem em vigor, reinicie o Apache:
# service httpd restart
Para verificar se o suporte a PHP esta ativo, crie um arquivo com o nome teste.php dentro da pasta /var/www/html/
que contenha a seguinte linha:
<?php phpinfo( ); ?>
Abra o seu navegador e digite o endereço:
http://127.0.0.1/teste.php
6) Instalando o Postgresql com todas as suas dependências:
# yum install postgresql*.*
Iniciando o serviço e ativando-o no boot:
# service postgresql start
# chkconfig postgresql on
Os arquivos de configuração do Postgresql se encontram dentro da pasta:
/var/lib/pgsql/data/
Acesse esse diretório e vamos editar os arquivos de configuração:
# cd /var/lib/pgsql/data
# vi pg_hba.conf
No final do arquivo deixe as linhas conforme o exemplo abaixo:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
Libera o acesso para a máquina local sem senha:
host all all 127.0.0.1/32 trust
Libera o acesso para a rede local sem senha:
host all all 192.168.0.0/24 trust
# Libera o acesso externo sem senha
host all all 0,0,0,0 0,0,0,0 trust
# IPv6 local connections:
#host all all ::1/128 ident sameuser
Para que as alterações entrem em vigor reinicie o serviço:
# service postgresql restart
Agora vamos editar o arquivo postgresql.conf:
# vi postgresql.conf
Descomente e modifique as linhas abaixo conforme o exemplo:
#—————————————————————————
# CONNECTIONS AND AUTHENTICATION #—————————————————————————
# – Connection Settings -
# Descomente, essa linha faz com que o Postgresql aceite conexões de qualquer ip.
listen_addresses = ‘*’ # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to ‘localhost’, ‘*’ = all
# Descomente as linha abaixo,
port = 5432
max_connections = 500
Para que as alterações entrem em vigor reinicie o serviço:
# service postgresql restart
Alguns comandos básicos de Postgresql:
Criando uma base de dados chamada microcamp
# createdb -U postgres microcamp
Listando as bases de dados dentro do banco:
# psql -U postgres -l
Entrando dentro da base de dados microcamp
# psql -U postgres microcamp
# Listando o conteúdo da base de dados:
frigo2=# \d
# Atribuindo uma senha para a base de dados
frigo2=# alter user postgres with encrypted password ’senha’;
Para sair da base de dados use as teclas CTRL + D simultaneamente.
Após atribuido a senha a base de dados é necessário editar novamente o arquivo pg_hba.conf, trocando os métodos trust por md5 para que a senha seja requisitada ao tentar a conexão, lembrando que o arquivo se encontra dentro do diretório /var/lib/pgsql/data.
# cd /var/lib/pgsql/data
# vi pg_hba.conf
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# “local” is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
# Libera o acesso para a máquina local sem senha
host all all 127.0.0.1/32 md5
# Libera o acesso para a rede local sem senha
host all all 192.168.0.0/24 md5
# Libera o acesso externo sem senha
host all all 0,0,0,0 0,0,0,0 md5
# IPv6 local connections:
#host all all ::1/128 ident sameuser
Para que as alterações entrem em vigor reinicie o serviço:
# service postgresql restart
Agora vamos testar a conexão com o Postgresql, crie um arquivo chamado conexao.inc.php dentro do diretório /var/www/html e adicione as linhas abaixo:
<?php
$strConexao=”host=localhost user=postgres dbname=frigo2 password=frigo13579 port=5432″;
$conexao=pg_connect($strConexao);
if(!$conexao){
echo “Erro na conexcao: ” . pg_last_error($conexao);
}
?>
Agora crie um arquivo chamado consultar_todos.php e adicione as linhas abaixo:
<?php
$strConexao=”host=localhost user=postgres dbname=frigo2 password=frigo13579 port=5432″;
$conexao=pg_connect($strConexao);
if(!$conexao){
echo “Erro na conexcao: ” . pg_last_error($conexao);
}
?>
Agora uma dica muito importante, para que a conexão possa ser estabelecida no CentOS é necessário desativar o SELinux, que por padrão na instalação fica ativado, para desativa-lo vá na área de trabalho e no menu Sistema -> Administração -> Nível de Segurança e Firewall e selecione Desativado
Pronto sua configuração básica já vai estar funcionando.
Fonte: www.microcampnews.com.br