O Que é LAMP e Como Instalá-lo no Ubuntu 16.04 e no CentOS 7

O Que é LAMP e Como Instalá-lo no Ubuntu 16.04 e no CentOS 7

Neste tutorial vamos ensinar como instalar LAMP em VPS com Ubuntu 16.04 e com CentOS 7. LAMP representa Linux, Apache, MySQL, PHP. É um pacote de ferramentas para a criação de aplicações web dinâmicas.

Neste pacote de código aberto, o Linux opera como sistema operacional para a aplicação, o MySQL é utilizado como banco de dados, o Apache é o servidor web e o PHP faz o processamento dos conteúdos dinâmicos. Outras alternativas para o PHP são o Perl e o Python. Mas neste tutorial vamos utilizar o PHP por ser mais popular.

Como o LAMP Funciona

Sempre que uma requisição de página chega em um servidor, ela passa por uma aplicação chamada servidor web, em nosso caso o Apache. O Apache procura pelo arquivo sendo solicitado na URL da requisição e passa a informação para o intérprete do PHP.

Ele executa a lógica contida no arquivo, retrai as informações do banco de dados MySQL e gera a página da internet. Então o Apache envia a página gerada para o cliente. Esse processo é executado com algumas variações sempre que uma página da internet é requisitada de um servidor LAMP.

Do Que Você Precisa?

Antes de começar este guia, você precisará do seguinte:

Como Instalar o LAMP no Ubuntu 16.04

Primeiramente, vamos ao processo de instalação do LAMP no Ubuntu 16.04. Confira o passo a passo abaixo:

Passo 1 – Instalar o Apache

Antes de iniciar a instalação, atualize o sistema para garantir estar com os pacotes mais atuais.

sudo apt-get update
sudo apt-get upgrade

Agora utilize o seguinte comando para instalar o Apache2:

sudo apt-get install apache2

Conferindo a instalação

Para verificar se a instalação ocorreu com sucesso, abra o navegador e acesse:

http://<ip_de_seu_vps>

Por exemplo, se o IP do seu servidor VPS for 195.110.59.211, digite:

http://195.110.59.211

Você deverá ver a seguinte página:

página padrão apache

Corrigindo problemas na instalação

Se a tela acima não apareceu, não se preocupe! É provável que você tenha ativado o firewall. Você precisa habilitar as solicitações nas portas 80 e 443 do firewall. Instale o UFW:

sudo apt-get install ufw

E agora dar permissão para que os protocolos HTTP e HTTPS trafeguem através do firewall:

sudo ufw allow http
sudo ufw allow https

Este comando dá permissão para que os protocolos HTTP e HTTPS trafeguem através do firewall. O UFW é uma aplicação de linha de comando chamada Uncomplicated Firewall. Ela é utilizada para gerenciar e criar regras para firewall do Linux. Agora insira o IP de seu VPS no navegador e confira a instalação. Você pode verificar o status do servidor Apache com o seguinte comando.

sudo systemctl status apache2

Passo 2 – Instalar o MySQL

O MySQL é o banco de dados para sua aplicação. Para instalá-lo, execute o seguinte comando:

sudo apt-get install mysql-server

Durante a instalação será solicitado a criação de um usuário root. Certifique de utilizar uma senha segura. Não deixe em branco.

instalar lamp no ubuntu

O usuário root possui os maiores privilégios do MySQL. Com o usuário root você pode criar outros usuários para ele. É uma boa prática criar um usuário novo para novas aplicações. Você pode verificar o status do serviço com o comando:

sudo systemctl status mysql

O resultado vai ser semelhante a esse:

  • mysql.service – MySQL Community Server
      Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
      Active: active (running) since Tue 2017-07-11 09:39:40 EDT; 1min 39s ago
    Main PID: 9579 (mysqld)
      CGroup: /system.slice/mysql.service
              └─9579 /usr/sbin/mysqld

    Jul 11 09:39:39 abandoned-plate systemd[1]: Starting MySQL Community Server…
    Jul 11 09:39:40 abandoned-plate systemd[1]: Started MySQL Community Server.

Passo 3 – Instalar PHP

O PHP executa sua aplicação. Instale o PHP e módulos extras com o comando:

sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql php-cgi php-curl php-json

Este comando vai instalar a última versão estável do PHP com alguns módulos adicionais exigidos para o bom funcionamento de aplicações.

Passo 3.1 – Verificar a Instalação do PHP

Agora que temos o PHP instalado, vamos verificar se está funcionando corretamente com a criação de um arquivo de teste que será lido pelo navegador. Primeiro, instale o editor de texto nano:

sudo apt-get install nano

O Nano é um editor de texto de linha de comando e é ótimo para iniciantes. Aprenda como utilizar o nano aqui. Agora, execute o comando:

sudo nano /var/www/html/teste.php

Este comando vai criar um arquivo em branco com nome teste.php para ser editado. O diretório /var/www/html onde o arquivo está sendo criado é conhecido como webroot. É aqui que o Apache procura pelo arquivo solicitado na URL por padrão, já que não foi configurado para procurar em outro local.

Confira o Manual do Ubuntu Apache para mais informações sobre essa configuração. Você vai precisar de privilégios root para pode editar arquivos neste diretório, por isso usamos sudo na frente do comando. Agora insira o seguinte texto com o editor:

<?php
phpinfo();
?>

Então pressione Ctrl + X (ou CMD + X se você estiver no Mac), e então Y, e por último aperte ENTER. Isso vai salvar o arquivo e fechar o editor. Agora abra o seguinte endereço no seu navegador:

http://<ip_de_seu_vps>/teste.php

Você deve ver uma página como esta:

concluir ação ao instalar lamp no ubuntu

A função phpinfo() que foi chamada no arquivo teste.php mostra informações sobre a instalação e configurações do PHP. Agora vamos excluir o arquivo de teste com o comando:

sudo rm /var/www/html/test.php

Nota: É muito importante excluir este arquivo após o teste pois ele pode fornecer informações valiosas sobre as configurações do seu servidor.

Como Instalar o LAMP no CentOS 7

Agora, chegou a hora de ver como é o processo no CentOS 7. De modo geral, é um procedimento bastante similar, mas que tem as suas peculiaridades. Veja:

Passo 1 – Instalando o Apache

Inicialmente lançado em 1995, o Apache é o software de servidor HTTP mais popular e mais antigo. O projeto Apache é mantido pela comunidade de código aberto Apache Software Foundation, o que significa que é gratuito. Podemos instalá-lo muito facilmente, pois ele vem com os repositórios padrão do software CentOS. Basta executar este comando no terminal:

yum install httpd -y

Agora, inicie o serviço Apache e ativá-lo na inicialização:

systemctl start httpd.service
systemctl enable httpd.service

Para verificar se ele foi iniciado corretamente, execute o comando ps aux | grep httpd:

[root@vps ~]# ps aux | grep httpd
root     15817  0.5  0.2 221792  4908 ?        Ss   04:33   0:00 /usr/sbin/httpd -DFOREGROUND
apache   15818  0.0  0.1 221792  2628 ?        S    04:33   0:00 /usr/sbin/httpd -DFOREGROUND

Como poderíamos ver, o daemon HTTP foi iniciado com êxito. Você deve ser capaz de acessar seu servidor via endereço IP agora.

Em primeiro lugar, verifique o IP do servidor usando dig:

dig +short myip.opendns.com @resolver1.opendns.com

Depois de obtê-lo, insira o endereço IP para o navegador da Web preferido. O resultado deve ser uma página com texto como It works! ou Testing 123

Passo 2 – Instalando o MySQL (MariaDB)

Após a implementação bem sucedida de um servidor web, vamos instalar o serviço de banco de dados real. MariaDB é uma comunidade desenvolvida fork do serviço muito conhecido MySQL, a boa notícia é que também é gratuito. Como ele vem com repositórios padrão CentOS também, basta executar  Yum:

yum install mariadb-server mariadb -y

Quando a instalação for concluída, inicie o MariaDB e ative-a no boot:

systemctl start mariadb
systemctl enable mariadb

Depois de iniciar o MariaDB, execute o script de segurança inicial para remover alguns padrões arriscados:

mysql_secure_installation

Em primeiro lugar, MariaDB irá pedir-lhe para a senha de root, no entanto, uma vez que esta é a instalação inicial, você não tem nenhum, então basta pressionar enter. O prompt seguinte perguntará se você deseja definir uma senha de root, insira Y e siga as instruções:

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorization.

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
... Success!

Para todas as outras perguntas, você pode clicar com segurança na tecla ENTER e aceitar as configurações padrão. Neste ponto a sua base de dados está pronta e podemos prosseguir para a instalação do PHP.

Passo 3 – Instalando o PHP

O motor PHP é necessário para processar o nosso código PHP, acessar o banco de dados e servir o conteúdo para o Apache. Mais uma vez, você pode usar o Yum para instalar os pacotes PHP necessários. Execute este comando no terminal:

yum install php php-mysql -y

Para que o Apache reconheça o mecanismo PHP, reinicie-o:

systemctl restart httpd.service

É isso aí! Você acabou de construir um servidor web.

Passo 4 – Teste do motor PHP

Você pode verificar se o PHP está realmente funcionando criando um arquivo de teste. Basta executar este comando:

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

Agora, acesse info.php via IP, como este:

http://your_server_IP_address/info.php

Você deve ver a página de informações PHP padrão com sua versão no cabeçalho:

php info

Conclusão

Você aprendeu como instalar LAMP no Ubuntu e no CentOS 7. Depois da instalação você pode subir os arquivos de sua aplicação para o servidor.

Você também pode instalar o phpMyAdmin para gerenciar seus bancos de dados com uma interface gráfica.

Certifique-se de conferir nossos outros tutoriais de VPS e se tiver algum problema, dúvida ou sugestão é só deixar um recado na seção de comentários abaixo!

Author
O autor

Rafael H.

Trabalho com marketing digital desde 2017. Atualmente sou Country Manager do Brasil na Hostinger. Sou apaixonado pelo mundo da tecnologia e hospedagem de sites, tendo experiência com WordPress, marketing digital, SEO, copywriting e ferramentas de automação de marketing. Também já trabalhei como analista de conteúdo, redator, assessor de imprensa e analista de comunicação.