como-instalar-nginx-php7-ubuntu-16-04-lts

O PHP7 está disponível no Ubuntu 16.04 LTS Xenial Xerus e você não precisa usar PPA de terceiros para instalar o PHP7 no Ubuntu 16.04. Neste tutorial, vamos ver como instalar o Nginx, MariaDB e PHP7-FPM (LEMP stack) no Ubuntu 16.04 LTS Xenial Xerus.

Atualizando Ubuntu 16.04 LTS

Antes de instalar qualquer software, é sempre uma boa ideia atualizar o repositório e pacotes de software. Se estiver instalando em um servidor real, você pode usar o SSH, se estiver usando o Ubuntu 16.04 digite os comandos abaixo.

sudo apt update
sudo apt upgrade

Instalando o Nginx Web Server

Nginx é um servidor web de alto desempenho. Ele também pode ser usado como um Proxy reverso. Digite o comando abaixo para instalar o Nginx Web server:

sudo apt install nginx

Depois de instalado, podemos ativar o Nginx para iniciar automaticamente quando o Ubuntu for inicializado executando o seguinte comando:

sudo systemctl enable nginx

Em seguida, inicie o Nginx com este comando:

sudo systemctl start nginx

Agora verifique seu status:

systemctl status nginx

Exemplo de saída:

nginx.service – A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Tues 2017-05-16 08:21:05 EDT; 2s ago
Main PID: 298 (nginx)
CGroup: /system.slice/nginx.service
??298 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
??299 nginx: worker process
“Enabled” indica que a inicialização automática no momento da inicialização do sistema está ativada e podemos ver que o Nginx está em execução.
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 “Bem-vindo ao nginx!”, O que significa que o servidor Web Nginx está funcionando corretamente.

como-instalar-nginx-php7-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 install curl
curl http://icanhazip.com
Se você estiver instalando o LEMP em um servidor local com Ubuntu 16.04, basta digitar 127.0.0.1 ou localhost na barra do navegador de sua escolha!
Finalmente, precisamos fazer www-data (Nginx user) como o proprietário do diretório raiz da web.
sudo chown www-data /usr/share/nginx/html -R

Instalando o MariaDB no Ubuntu

MariaDB é um excelente alternativa ao MySQL. Ele é desenvolvido por ex-membros da equipe do MySQL que se preocupam com a possibilidade de que a Oracle possa transformar o MySQL em um produto de código fechado. Muitas distribuições Linux (Arch Linux, Fedora etc), empresas e organizações (Google, Wikipedia) migraram para MariaDB. Então vamos instalar o MariaDB em vez do MySQL.

sudo apt install mariadb-server mariadb-client

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

systemctl status mysql

Exemplo 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 Tues 2017-05-16 08:21:05 EDT; 2s ago
Docs: man:systemd-sysv-generator(8)

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

sudo systemctl start mysql

Execute o comando abaixo para fazer com que o  MariaDB inicie automaticamente quando o Ubuntu 16.04 for reinicializado:

sudo systemctl enable mysql

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

sudo mysql_secure_installation

Quando pedir para você digitar a senha root do MariaDB, apenas 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.

Instalando o PHP7 no Ubuntu

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

sudo apt install php7.0-fpm php7.0-mbstring php7.0-xml php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl

As extensões PHP são comumente necessárias para sistemas de gerenciamento de conteúdo (CMS) como o WordPress. Por exemplo, se a sua instalação não tiver php7.0-xml, algumas das suas páginas do site do WordPress podem estar em branco e você pode encontrar um erro no registro de erros do Nginx, como:

PHP message: PHP Fatal error: Uncaught Error: Call to undefined function xml_parser_create()
A instalação dessas extensões PHP garante que seu CMS seja executado sem problemas.

Agora vamos iniciar o php7.0-fpm, para isso, execute o comando abaixo:

sudo systemctl start php7.0-fpm

Vamos agora 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 Tues 2017-05-16 08:21:05 EDT; 2s ago

Criando um arquivo de bloqueio de servidor padrão do Nginx

Remova o link simbólico padrão no diretório habilitado para sites.
sudo rm /etc/nginx/sites-enabled/default

Em seguida, crie um novo arquivo padrão no diretório /etc/nginx/conf.d/:

sudo nano /etc/nginx/conf.d/default.conf

Cole o seguinte texto para o arquivo. Substitua o IP 12.13.14.15 pelo o seu IP do servidor real:

server {
 listen 80;
 listen [::]:80;
 server_name 12.13.14.15;
 root /usr/share/nginx/html/;
 index index.php index.html index.htm index.nginx-debian.html;

location / {
 try_files $uri $uri/ =404;
 }

error_page 404 /404.html;
 error_page 500 502 503 504 /50x.html;

location = /50x.html {
 root /usr/share/nginx/html;
 }

location ~ \.php$ {
 fastcgi_pass unix:/run/php/php7.0-fpm.sock;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include fastcgi_params;
 include snippets/fastcgi-php.conf;
 }

location ~ /\.ht {
 deny all;
 }
}

Salve e feche o arquivo. Em seguida, teste a configuração do nginx e recarregue-a:

sudo nginx -t
sudo systemctl reload nginx

 

Testando o PHP 7

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

php --version

Exemplo de saída:

PHP 7.0.15-7ubuntu2 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2017, by Zend Technologies

Para testar o PHP-FPM, primeiro crie um arquivo test.php no diretório raiz da Web:

sudo nano /usr/share/nginx/html/test.php

Cole o seguinte código PHP no arquivo:

<?php phpinfo(); ?>
Salve e feche o arquivo. Agora, na barra do navegador, digite seu-endereço-de-ip/test.php . Substitua seu-endereço-de-ip pelo seu IP atual. Você deve ver as informações de PHP do seu servidor. Isso significa que o processamento do PHP está bem.

como-instalar-nginx-php7-ubuntu-16-04-lts

Para a segurança do servidor, você deve excluir o arquivo test.php!
Pronto! Você instalou com êxito Nginx, MariaDB e PHP7 (LEMP stack) no Ubuntu 16.04 LTS Xenial Xerus.

Telegram Desktop agora suporta chamada de voz

Previous article

Falha de segurança da tela de login do Ubuntu pode permitir que qualquer um acesse seus arquivos

Next article

You may also like

More in Tutoriais