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.
Conteúdo
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:
- Um computador com cliente SSH instalado (se você for usuário de Windows confira o tutorial como usar o PuTTy SSH e se conectar com sua hospedagem);
- VPS com Ubuntu 16.04 ou CentOS 7;
- Um usuário root com privilégios sudo (Ubuntu)
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:
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.
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:
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:
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!
Comentários
setembro 04 2017
Muito obrigado, ajudou muito !
novembro 09 2017
Muito Bom, ajudou muito. Obrigado!
abril 16 2018
Como faço para alterar a versão do PHP? Queria colocar a versão 7...
abril 17 2018
Bom dia, Fábio! É só entrar no seu painel de controle, pressionar as teclas Ctrl + F e digitar "Versão do PHP". Clique no ícone e você poderá escolher qual versão utilizar, inclusive a versão 7. :D
agosto 15 2018
Olá, ta feito isso, como que configura o dominio no servidor, o acesso FTP para envio dos arquivos? Ficou muito vago o tutorial, poderia ajudar?
agosto 20 2018
Oi, Anderson Configurar um domínio no servidor significa que você quer criar um virtual host. Para isso recomendamos a leitura deste tutorial https://www.hostinger.com.br/tutoriais/como-criar-um-virtual-host-apache-centos7/ Espero ter ajudado! :)
novembro 20 2018
bacana! simples e objetivo! um detalhe importante que eu não tinha visto na maioria dos blogs sobre o assunto foi a troca da senha do root via MySQL_Secure_Installation e pegar o IP via terminal. Parabéns!