Este tutorial abrange a instalação e configuração de um Servidor Web Apache, SGDB PostgreSql, Php5 e ferramentas de administração e manutenção do sistema, para uso com o CakePHP.
Para testá-lo usei um Ubuntu 9.04 recém instalado.Para começarmos, vamos abrir um terminal (alt+F2 - gnome-terminal - executar), para mudar para administrador digite:
$ sudo bash
após a senha o prompt mudará para # e estaremos logados como administrador
Instalar o apache
# apt-get install apache2Confirmar se o apache está rodando
reiniciar o apache
# /etc/init.d/apache2 restart
Alt+F2 - Firefox - executar
digitar http://localhost na barra de localização
Se tudo estiver bem aparecerá a mensagem : It works!
Ativar o modo rewrite do apache, necessário para o CakePHP trabalhar
# ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
# gedit /etc/apache2/sites-available/defaultLibere as permissões AllowOverride para a pasta www mudando de none para All
AllowOverride All
Order allow,deny
allow from all
Reiniciar o apache
# /etc/init.d/apache2 restart
Instalar o PHP
# apt-get install php5
Instalar o Postgresql
# apt-get install postgresql postgresql-contrib postgresql-doc postgresql-client
Instalar o phppgadmin - para gerenciar o Postgresql
# apt-get install phppgadmin
Liberar o phppgadmin para aceitar logon do usuário postgres, vem desativado por padrão
# gedit /etc/phppgadmin/config.inc.php
Procure a linha
$conf['extra_login_security'] = true;
e troque por false
$conf['extra_login_security'] = false;
# su postgres
o prompt muda para $ agora vamos abrir o terminal do postgresql
$ psql
para criar ou mudar a senha:
=# \password postgres
neste exemplo, altere para postgres e confirme
Para sair do psql
=# \q
Para voltar prompt do root
$ exit
Testar o PhpPgAdmin - abra o firefox e digite na barra de localização
http://localhost/phppgadmin/
Para liberar o phppgadmin para acesso a maquinas externas
# gedit /etc/phppgadmin/apache.conf
Procure por:
order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0
Para:
order deny,allow
#deny from all (ficou em comentário)
#allow from 127.0.0.0/255.0.0.0 (ficou em comentário)
allow from all
Pgadmin3 - uma opção interessante ao PhpPgAdmin para uso local
Instalar o Webmin - administrador de sistemas via Web
Baixe a versão .deb do Webmin da página de donwloads http://www.webmin.com/download.html
Clique no pacote baixado, que será aberto pelo Gdebi, e depois clique em instalar; acrescente sua senha e aguarde o Gdebi baixar as dependências necessárias e fazer a instalação.Para acessar o Webmin - abra o firefox no endereço:
https://localhost:10000
Se o Firerox oferecer a exceção, é só aceitá-la, caso ele não ofereça. Vá em preferências - avançado - certificados - Na aba servidores, clique em adicionar exceção.
Configurações extras - não utilizei, mas a informação pode ser útil
A configuração padrão do PostgreSQL faz com que apenas conexões locais (via soquete UNIX) sejam permitidas. Vamos alterar Para que ele aceite conexões de outros micros da rede
# gedit /etc/postgresql/8.32/main/postgresql.conf
Edite o arquivo e procure a linha
listen_addresses = ‘localhost’
altere para:
listen_addresses = ‘*’
Agora vamos editar o arquivo que controla quais hosts terão permissões de conexão, como os clientes se autenticam, quais usuários do PostgreSQL podem ser usados e que bancos de dados eles podem acessar.
# gedit /etc/postgresql/8.3/main/pg_hba.conf
A sintaxe é a seguinte:
host all all ip_do_servidor/32 md5
Para o nosso objetivo não se precisou alterar nada no arquivo, bastou garantir as linhas padrões:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
Criar um novo usuário para login com o phppgadmin
$ su postgres
o prompt muda para $
abrir o terminal do postgresql
$ psql
para criar um novo usuario chamado francisco
=# CREATE ROLE francisco;
para definir senha para usuario francisco
=# \password francisco
para dar permissões para o usuário francisco criar banco de dados
=# ALTER ROLE francisco CREATEROLE CREATEDB;
FranciscoLima