Como Instalar LEMP Stack no CentOS 7 Minimal
Nginx é um software de servidor web de código aberto e o PHP v7 é a versão mais recente do mecanismo PHP. Neste tutorial, nós vamos usá-lo para criar instalar LEMP (Linux, Enginx, MySQL, PHP). O Nginx substitui o popular pacote Apache, encontrado no LAMP.
Conteúdo
O Que Você Vai Precisar
Antes de começar este tutorial, você vai precisar de acesso root a um serviço de hospedagem VPS.
1º Passo – Como Instalar Nginx no CentOS 7
Já que o Nginx não está mais disponível nos repositórios padrões do CentOs, nós vamos instalar o repositório EPEL executando este comando:
yum install epel-release -y
Em seguida, vamos instalar o próprio Nginx:
yum install nginx -y
Depois de completar as instalações, ative o Nginx para que comece a inicialização e execute:
systemctl start nginx systemctl enable nginx
Para verificar se o Nginx está funcionando, você pode visitar o seu endereço de IP pelo navegador. Primeiro, localize o seu IP:
dig +short myip.opendns.com @resolver1.opendns.com
Então, apenas copie e cole o endereço no seu navegador e você deve se deparar com uma página parecida com a exibida abaixo:
2º Passo – Como Instalar MySQL (MariaDB)
Uma vez que o servidor web está instalado, nós podemos seguir em frente com a instalação no MySQL. MariaDB é uma comunidade do antigo e conhecido serviço MySQL. Já que o MariaDB vem como repositório padrão do CentOS, nós podemos executar Yum para instalar:
yum install mariadb-server mariadb -y
Depois de completar a instalação, vamos ativar e iniciar o serviço:
systemctl start mariadb systemctl enable mariadb
E por último, execute o script de configuração inicial que removerá algumas das configurações padrão:
mysql_secure_installation
O MariaDB vai solicitar a senha root, porém como se trata de uma instalação inicial, você não terá nenhuma senha, apenas pressione enter. O próximo prompt vai solicitar se você quer configurar uma senha root, entre Y e siga as instruções abaixo:
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!
Você pode pressionar ENTER para inserir a senha e aceite as demais configurações padrões para as perguntas seguintes. Assim que completar a instalação, prossiga para instalar o PHP.
3º Passo – Instalar PHP v7.1.0
A primeira coisa que temos que fazer é instalar o repositório adicional CentOS que contém pacotes necessários para o PHP v7.1:
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm
Habilite o repositório php71 que vem desabilitado por padrão:
yum install yum-utils -y yum-config-manager --enable remi-php71
Em seguida, instale o pacote PHP:
yum --enablerepo=remi,remi-php71 install php-fpm php-common
Instale os módulos comuns:
yum --enablerepo=remi,remi-php71 install php-opcache php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-redis php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml
4º Passo – Configurar Nginx Para Funcionar Com PHP 7
Crie um novo arquivo de configuração Nginx executando o editor de texto nano ou vim:
nano /etc/nginx/conf.d/default.conf
Insira este código:
server { listen 80; server_name your_server_ip; # note that these lines are originally from the "location /" block root /usr/share/nginx/html; index index.php index.html index.htm; 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$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Importante! Substitua your_server_ip pelo IP do seu servidor.
Pressione CTRL + X (CMD + X para usuários Mac) para salvar o arquivo. Reinicie Nginx para que as alterações sejam aplicadas:
systemctl restart nginx
Agora, abra a configuração PHP-FPM:
nano /etc/php-fpm.d/www.conf
Localize e substitua as linhas abaixo:
Onde está escrito “user = apache” substitua por “user = nginx“.
Substitua “group = apache“ por “group = nginx“
“listen.owner = nobody” deve ficar como “listen.owner = nginx”
E “listen.group = nobody” deve ser substituído por “listen.group = nginx”
Por fim, abaixo de “;listen = 127.0.0.1:9000” adicione a linha:
listen = /var/run/php-fpm/php-fpm.sock
E de novo, clique em CTRL + X para salvar. Por fim, inicie o php-fpm e habilite para inicialização:
systemctl start php-fpm.service systemctl enable php-fpm.service
Conclusão
Pode ser que para instalar pilha LEMP no CentOS 7 Minimal exija mais configurações do que a conhecida LAMP, mas você pode ter certeza que estará usando a mais recente tecnologia dos dois mundos – um rápido pacote de processadores PHP-FPM v7 com o moderno serviço web Nginx.