Tutorial

Como Instalar Linux, Apache, MySQL, PHP, pilha (LAMP) no Ubuntu 20.04 [Quickstart]

Published on May 21, 2020

Developer Advocate

Português
Como Instalar Linux, Apache, MySQL, PHP, pilha (LAMP) no Ubuntu 20.04 [Quickstart]

Introdução

Neste guia quickstart, instalaremos uma pilha LAMP em um servidor Ubuntu 20.04.

Para obter uma versão mais detalhada deste tutorial, com mais explicações sobre cada passo, consulte o tutorial How To Install Linux, Apache, MySQL, PHP (LAMP) Stack on Ubuntu 20.04

Pré-requisitos

Para seguir este guia, você precisará ter acesso a um servidor Ubuntu 20.04 como um usuário sudo.

Passo 1 — Instalar o Apache

Atualize o cache do seu gerenciador de pacotes e, em seguida, instale o Apache com:

  1. sudo apt update
  2. sudo apt install apache2

Assim que a instalação terminar, você precisará ajustar suas configurações de firewall para permitir o tráfego HTTP em seu servidor. Execute o seguinte comando para permitir o acesso externo na porta 80 (HTTP):

  1. sudo ufw allow in "Apache"

Com a nova regra de firewall adicionada, você poderá testar se o servidor está em funcionamento, acessando o endereço IP público do seu servidor ou nome de domínio do seu navegador Web. Você verá uma página como esta:

Ubuntu 20.04 Apache default

Passo 2 — Instalar o MySQL

Agora, vamos instalar o MySQL, um popular sistema de gerenciamento de banco de dados utilizado em ambientes PHP.

Novamente, utilize o apt para adquirir e instalar este software:

  1. sudo apt install mysql-server

Quando a instalação terminar, é recomendável que você execute um script de segurança que vem pré-instalado com o MySQL. Inicie o script interativo executando:

  1. sudo mysql_secure_installation

Este script irá perguntar se você deseja configurar o VALIDATE PASSWORD PLUGIN. Responda Y para sim, ou qualquer outra coisa para continuar sem a habilitar. Se você responder “yes”, você será solicitado a selecionar um nível de validação por senha.

Em seguida, seu servidor pedirá que você escolha e confirme uma senha para o root user do MySQL. Embora o método de autenticação predefinido para o root user dispense o uso de uma senha, mesmo quando uma senha está definida, você deve definir uma senha forte aqui como uma medida de segurança adicional.

Para o resto das perguntas, pressione Y e pressione a tecla ENTER em cada prompt.

Nota: no momento em que este artigo foi escrito, a biblioteca nativa do PHP para o MySQL mysqlnd não suporta o caching_sha2_authentication, o método de autenticação padrão para o MySQL 8. Por essa razão, ao criar usuários de banco de dados para aplicações PHP no MySQL 8, você precisará garantir que eles estejam configurados para usar o mysql_native_password. Consulte o passo 6 do nosso guia LAMP detalhado no Ubuntu 20.04 para aprender a fazer isso.

Passo 3 — Instalar o PHP

Para instalar o PHP e suas dependências, execute:

  1. sudo apt install php libapache2-mod-php php-mysql

Assim que a instalação terminar, você pode executar o seguinte comando para confirmar sua versão PHP:

  1. php -v
Output
PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

Passo 4 — Criando um Virtual Host para seu Website

Neste guia,vamos configurar um domínio chamado your_domain, mas você deve substituí-lo por seu próprio nome de domínio.

O Apache no Ubuntu 20.04 tem um bloco de servidor habilitado por padrão que está configurado para servir documentos do diretório /var/www/html. Em vez de modificar o /var/www/html, vamos criar uma estrutura de diretórios dentro do /var/www para o site your_domain, deixando o /var/www/html intocado como o diretório padrão para ser servido se uma solicitação de cliente não corresponder a nenhum outro site.

Crie o diretório para o your_domain como segue:

  1. sudo mkdir /var/www/your_domain

Em seguida, atribua a propriedade do diretório com a variável de ambiente $USER, que deve fazer referência ao seu usuário de sistema atual:

  1. sudo chown -R $USER:$USER /var/www/your_domain

Em seguida, abra um novo arquivo de configuração no diretório sites-available do Apache usando seu editor de linha de comando preferido.

  1. sudo nano /etc/apache2/sites-available/your_domain.conf

Isso criará um novo arquivo em branco. Cole nele a seguinte configuração:

/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
    ServerName your_domain
    ServerAlias www.your_domain
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Salve e feche o arquivo quando terminar. Se você estiver usando o nano, você pode fazer isto pressionando CTRL+X, depois Y e ENTER.

Agora, você pode usar a2ensite para habilitar o novo virtual host:

  1. sudo a2ensite your_domain

Para desativar o site padrão do Apache, digite:

  1. sudo a2dissite 000-default

Para garantir que seu arquivo de configuração não contenha erros de sintaxe, execute:

  1. sudo apache2ctl configtest

Por fim, recarregue o Apache para que essas alterações entrem em vigor:

  1. sudo systemctl reload apache2

Agora, seu novo site está ativo, mas o web root /var/www/your_domain ainda está vazio. Crie um arquivo index.html naquele local para que possamos testar se o virtual host funciona conforme esperado:

  1. nano /var/www/your_domain/index.html

Inclua o conteúdo a seguir neste arquivo:

/var/www/your_domain/index.html
<html>
  <head>
    <title>your_domain website</title>
  </head>
  <body>
    <h1>Hello World!</h1>

    <p>This is the landing page of <strong>your_domain</strong>.</p>
  </body>
</html>

Agora, vá até seu navegador e acesse o nome de domínio ou o endereço IP do seu servidor novamente:

http://server_domain_or_IP

Você verá uma página como esta:

Teste do host virtual do Apache

Passo 5 — Testar o PHP com o Apache

Agora, vamos criar um script de teste PHP para confirmar que o Apache consegue lidar e processar solicitações para arquivos PHP.

Crie um novo arquivo chamado info.php dentro de sua pasta web root personalizada:

  1. nano /var/www/your_domain/info.php

Isso abrirá um arquivo em branco. Adicione o conteúdo a seguir ao arquivo:

/var/www/your_domain/info.php
<?php
phpinfo();

Quando você terminar, salve e feche o arquivo.

Vá para seu navegador Web e acesse o nome de domínio ou o endereço IP do seu servidor seguido pelo nome do script, que neste caso é info.php:

http://server_domain_or_IP/info.php

Você verá uma página parecida com esta:

Ubuntu 20.04 o PHP info

Após verificar as informações relevantes sobre seu servidor PHP através dessa página, é melhor remover o arquivo que você criou, uma vez que ele contém informações confidenciais sobre seu ambiente PHP e seu servidor Ubuntu. Você pode usar o rm para fazer isso:

  1. sudo rm /var/www/your_domain/info.php

Tutoriais relacionados

Aqui estão os links para os guias mais detalhados relacionados a este tutorial:

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about our products

About the authors
Default avatar

Developer Advocate

Dev/Ops passionate about open source, PHP, and Linux.

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Become a contributor for community

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

DigitalOcean Documentation

Full documentation for every DigitalOcean product.

Resources for startups and SMBs

The Wave has everything you need to know about building a business, from raising funding to marketing your product.

Get our newsletter

Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.

New accounts only. By submitting your email you agree to our Privacy Policy

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.