Sunday, November 2, 2014

Instalando servidor web Apache, PHP, MySQL, PostgreSQL no Ubuntu

Neste post irei abordar de forma resumida como instalar o famoso LAMP incluindo o PostgreSQL que é um poderoso banco de dados. Recentemente tive um projeto que iria manipular muitos dados, testei o MySQL, PostgreSQL e o Oracle. Para projetos de pequeno e médio porte eu particularmente recomendo o MySQL ou o PostgreSQL, no meu caso eu sempre escolho o PostgreSQL. Foram poucos os projetos em que trabalhei com o MySQL. Mas tudo depende e vai de cada um realizar a melhor escolha.
Para este projeto eu acabei ficando com o Oracle. Oracle é Oracle e não precisa falar muito. Neste projeto também utilizei JavaEE com JSF2.2. Depois vou fazer um post de como instalar o Oracle, configurar o Java e o Tomcat no Ubuntu.
Daqui para frente vou entender que você já sabe o que é um terminal e já sabe como instalar programas via linha de comando.
Vamos começar pelo Apache, lembrando que esse não é o Apache Tomcat. O comando para instalar o Apache é:

#sudo apt-get install apache2

Em seguida iremos instalar o MySQL e o MySQL Workbench que é a ferramenta visual (GUI) que usamos para trabalhar com o banco de dados de forma mais produtiva, lembrando que você pode usar outra ferramenta de sua preferência.
Durante a instalação do MySQL será necessário informar a senha do root, basta digitar a senha e apertar a tecla para baixo, ele vai cair no [OK] então pressione a tecla Enter ou a tecla de espaço, digite a senha novamente e repita o processo para confirmar a senha.
Para instalar o MYSQL executaremos o seguinte comando:

#sudo apt-get install mysql-server mysql-workbench

Agora iremos instalar o PostgreSQL bem como o pgAdmin3 que é a interface gráfica (GUI) de manipulação do banco de dados de forma mais produtiva.

#sudo apt-get install postgresql pgadmin3

No processo de instalação do PostgreSQL o sistema não vai solicitar que você informe a senha do postgres (usuário do tipo root do MySQL). Para que seja definida a senha padrão do seu usuário postgres você deverá aguardar toda a finalização do processo de instalação do banco e no terminal você vai digitar:

sudo su postgres

Vai ser solicitado sua senha de root, após informar sua senha irá aparecer:

postgres@(seu usuário):

Digite:

psql

E altere a senha do banco com o seguinte comando:

ALTER ROLE POSTGRES PASSWORD 'sua_senha';

Pressione enter vai aparecer ALTER ROLE e em seguida \q para sair.

E por último iremos instalar o PHP5.5.9 versão estável atual do Ubuntu e também as bibliotecas de conexão com os bancos de dados MYSQL e PostgreSQL, integração com o apache e outras bibliotecas comuns.

#sudo apt-get install php5 php5-pgsql php5-mysql libpq-dev php-pear php5-xsl php5-gd libapache2-mod-php5 php5-curl

Agora é hora de testar tudo e ver se foi corretamente instalado o PHP, Apache, MySQL e o PostgreSQL. Como já temos o terminal de comando aberto digite:

#sudo gedit /var/www/html/index.php

Vai ser aberto o texteditor do Ubuntu, digite:

<?php phpinfo(); ?>

Salve e feche o texteditor.
Abra o Firefox ou o seu browser preferido e digite localhost/index.php e verifique se todas as suas configurações foram ativadas.
☝️Se você acessr apenas o localhost neste momento, o Apache vai buscar o arquivo index.html que existe na pasta www/html e não vai exibir os dados do PHP que criamos no arquivo anterior.

Tela do phpinfo();
Se estiver tudo OK vamos agora finalizar todo este processo e alterar algumas configurações do Apache e do php.ini.
No Apache iremos alterar o  caminho padrão das pastas do servidor que é onde os seus projetos PHP deverão ficar salvos. Já li várias maneiras de alterar, mas a que eu sempre uso (e sempre funciona) é a seguinte:
Pelo terminal de comando digite:

#sudo gedit /etc/apache2/sites-available/000-default.conf

Localize o texto /var/www/html e altere o caminho para o que você irá utilizar por exemplo /home/fulano/webroot. Feito salve o arquivo e feche o texteditor. Em seguida altere o arquivo:

#sudo gedit /etc/apache2/apache2.conf

Localize o mesmo caminho alterado no arquivo anterior (/var/www/html) e coloque o mesmo caminho que você informou no arquivo anterior.
Só execute estes comandos acima caso você possua um outro local de armazenamento e execução dos seus projetos.

Para finalizar iremos alterar algumas configurações básicas do PHP. Posteriormente você poderá alterar qualquer outra configuração que desejar!
Para isto abra o arquivo php.ini localizado em /etc/php5/apache2/php.ini e procure por short_open_tag = Off e altere para short_open_tag = On esta configuração faz com que os scripts em PHP (seu arquivo .php) possa ser executado utilizando <?php ?> ou apenas o <? ?>. Muitas bibliotecas que já utilizei do PHP não foram "criadas" utilizando o modo padrão do PHP que é <?php ?> com isso acaba que o PHP não consegue "ler" o seu arquivo.
Em seguida procure por display_errors = Off e altere para display_errors = On o nome já diz tudo né? Essa configuração faz com que o PHP exiba os erros na tela do browser (ou linha de comando).
E por fim procure date.timezone = e altere para date.timezone = America/Sao_Paulo com isso iremos "setar" o Timezone do seu servidor para o Timezone do Brasil. Alguns frameworks como o Symfony e o Cake utilizam esta configuração para serem instalados corretamente.






No comments:

Post a Comment