Como instalar o Apache, MariaDB e PHP7 (LAMP Stack) no Ubuntu 16.04 LTS

O Ubuntu 16.04 LTS Xenial Xerus já vem com PHP7 em seus repositórios padrão. Neste caso você não vai precisar usar PPA de terceiros ou até mesmo repositórios PPA para instalar o PHP7 no Ubuntu 16.04 LTS ou derivados. Neste tutorial, vamos ver como instalar Apache, MariaDB e PHP7 (LAMP stack) no Ubuntu 16.04 LTS Xenial Xerus.

Atualizando o Ubuntu 16.04 LTS

Antes de instalar qualquer software, é sempre recomendado atualizar o Ubuntu 16.04. Para isso digite os comandos abaixo:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Instalar o Servidor Web Apache

Digite este comando para instalar o servidor Web Apache:

sudo apt-get install apache2 apache2-utils

Instalar Apache, MariaDB e PHP7 (LAMP Stack) no Ubuntu 16.04 LTS

Depois de instalado o Apache deve ser iniciado automaticamente. Confira seu status com o comando systemctl.

systemctl status apache2

Exemplo de saída no terminal:

apache2.service – LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
??apache2-systemd.conf
Active: active (running) since Wed 2016-05-11 11:21:57 EDT; 32s ag

Se não estiver em execução, use o comando systemctl para iniciá-lo:

sudo systemctl start apache2

Também é uma boa ideia deixar o Apache iniciar automaticamente quando o Ubuntu 16.04 for iniciado, ou seja, durante o boot o serviço será ativado automaticamente:

sudo systemctl enable apache2

Verifique a versão do Apache:

apache2 -v

Exemplo de saída:

Server version: Apache/2.4.18 (Ubuntu)
Server built: 2017-05-11T11:31:57
Agora, na barra de endereços do seu navegador, digite o endereço IP público do servidor Ubuntu 16.04 LTS. Você deve ver a página da Web “Isso funciona!” ou “It Works”, o que significa que o servidor Apache Web está sendo executado corretamente.

Instalar Apache, MariaDB e PHP7 (LAMP Stack) no Ubuntu 16.04 LTS

Você pode usar o seguinte comando para buscar o endereço IP público do servidor Ubuntu 16.04:

sudo apt-get install curl
curl http://icanhazip.com
Se você estiver instalando o LAMP no localhost do Ubuntu 16.04, basta digitar 127.0.0.1 ou localhost na barra!

Finalmente, precisamos criar o www-data (usuário Apache) como o proprietário do diretório raiz da web:

sudo chown www-data /var/www/html/ -R

Instalar MariaDB

MariaDB é uma substituição drop-in para o MySQL. Ele é desenvolvido por ex-membros da equipe do MySQL que se preocupam que a Oracle possa transformar o MySQL em um produto de código fechado. Muitas distribuições e empresas Linux migraram para MariaDB. Então vamos instalar o MariaDB em vez do MySQL.

sudo apt-get install mariadb-server mariadb-client

Depois de instalado, o servidor MariaDB geralmente é iniciado automaticamente. Use systemctl para verificar seu status:

systemctl status mysql

Exemplos de saída:

mysql.service – LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled)
Active: active (running) since Wed 2017-05-11 11:32:01 EDT; 1min 30s ago
Docs: man:systemd-sysv-generator(8)

Se não estiver em execução, inicie-o com este comando:

sudo systemctl start mysql

Para ativar o MariaDB automaticamente quando o Ubuntu 16.04 for reinicializado execute o comando abaixo:

sudo systemctl enable mysql

Agora execute o script de segurança pós-instalação:

sudo mysql_secure_installation
Quando pedir que você digite a senha do root do MariaDB, pressione enter porque você ainda não definiu a senha do root.
Em seguida, digite y para definir a senha de root para o servidor MariaDB.
Em seguida, basta pressionar Enter para responder a todas as perguntas restantes. Isso removerá o usuário anônimo, desativará o login de root remoto e removerá o banco de dados de teste. Esta etapa é um requisito básico para a segurança do banco de dados MariaDB.

Instalar o PHP7

Digite o seguinte comando para instalar as extensões PHP7 e PHP7:

sudo apt-get install php7.0-fpm php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl libapache2-mod-php7.0

Ative o módulo Apache php7.0 e reinicie o servidor Web Apache:

sudo a2enmod php7.0
sudo systemctl restart apache2

Teste o PHP

Para testar a versão cli do PHP7, basta digitar este comando:

php –version

Exemplo de saída:

user@www:~$ php –version
PHP 7.0.4-7ubuntu2 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c)71999-2017, by Zend Technologies

Para testar o PHP com o servidor Apache, primeiro crie um arquivo test.php no diretório raiz da Web.

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

Cole o seguinte código PHP no arquivo:

<?php phpinfo(); ?>
Salve e feche o arquivo. Agora, na barra digite o ip-do-servidor/test.php. Substitua ip-do-servidor pelo seu IP atual. Lembrando que caso esteja usando o localhost então digite 127.0.0.1/test.php ou localhost/test.php .

Instalar Apache, MariaDB e PHP7 (LAMP Stack) no Ubuntu 16.04 LTS

Existem agora basicamente duas maneiras de executar o código PHP com o servidor web Apache:

  • Módulo PHP do Apache
  • PHP-FPM.
A configuração acima usa o módulo Apache PHP7.0. Se ele atende para o que você vai usar, então continue com ele, em seguida, exclua o arquivo que criamos, test.php, para que ninguém mais possa ver as informações do servidor e não siga as instruções abaixo que é para usar o PHP-FPM ao invés do Módulo PHP do Apache.

Mas se você quiser usar o PHP-FPM para executar o código PHP, então você precisa do módulo mod_proxy_fcgi  do Apache para habilitar execute o seguinte comando:

sudo a2enmod proxy_fcgi
Em seguida, edite o arquivo de configuração do host virtual. Este tutorial usa o host virtual padrão como exemplo.
sudo nano /etc/apache2/sites-available/000-default.conf

Adicione ProxyPassMatch no arquivo:

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/html/
Salve e feche esse arquivo. Reinicie Apache2.
sudo systemctl restart apache2

Agora vamos Iniciar o php7.0-fpm

sudo systemctl enable php7.0-fpm

Agora vamos ativar php7.0-fpm para iniciar no momento da inicialização do sistema:

sudo systemctl enable php7.0-fpm

Verificar status:

systemctl status php7.0-fpm

Exemplo de Saída:

php7.0-fpm.service – The PHP 7.0 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor pre
set: enabled)
Active: active (running) since Wed 2017-05-11 11:50:05 EDT; 2s ago
Agora, se você tentar acessar o arquivo  test.php em seu navegador, você verá que a API do servidor que é FPM/FastCGI pois o servidor web Apache passará os pedidos PHP para o PHP-FPM.

Para a segurança do servidor, você deve excluir o arquivo test.php agora.
Parabéns! Você instalou com sucesso o Apache, o MariaDB e o PHP7 no Ubuntu 16.04 LTS Xenial Xerus.
Share This Article
Follow:
Fundador do SempreUPdate. Acredita no poder do trabalho colaborativo, no GNU/Linux, Software livre e código aberto. É possível tornar tudo mais simples quando trabalhamos juntos, e tudo mais difícil quando nos separamos.
Sair da versão mobile