O que é LEMP?
O termo LEMP é a junção do sistema operacional Linux, servidor web Nginx, SGBD MySQL e a linguagem PHP, formando o ambiente PHP completo.
Atualize o repositório
# yum update
# yum install epel-release
Instalação dos pacotes LEMP
# yum install nginx mariadb-server mariadb php php-mysql php-pdo php-cli php-curl php-fpm php-mbstring php-xml
Ajuste de configuração do MySQL
# mysql_secure_installation
Pressione Y e ENTER para aceitar as configuração padrão para todas as perguntas. Isso irá remover alguns usuários anônimos e o banco de dados teste, desativará os logins remotos ao root, e carregará essas novas regras do MySQL/MariaDB.
Inicializar os serviços e habilitar no boot do Nginx e MySQL
Nginx
# systemctl start nginx
# systemctl enable nginx
MySQL/MariaDB
# systemctl start mariadb
# systemctl enable mariadb
O CentOS vem com firewall habilitado e precisa liberar a porta 80 para acessar o servidor
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload
Edite o arquivo /etc/php-fpm.d/www.conf, substituir em user e group de apache por nginx, conforme abaixo:
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
Por padrão, php-fpm irá escutar em um host e porta específicos sobre TCP. Queremos alterar essa configuração para que ela ouça um arquivo de socket local, pois isso melhora o desempenho geral do servidor.
Altere a linha que contém a diretiva de escuta no arquivo /etc/php-fpm.d/www.conf para o seguinte:
listen = /var/run/php-fpm/php-fpm.sock;
Por fim, no mesmo arquivo, altere a configuração do dono e grupo no socket definido na diretiva listen. Pesquise as diretivas listen.owner, listen.group e listen.mode. Por padrão essas linhas estão comentadas. Descomente, removendo o ; dessas linhas e altere para nginx, conforme abaixo:
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
Habilitar o PHP-FPM
# systemctl start php-fpm
Configuração do Nginx para o processo PHP
# vim /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name server_domain_or_IP;
root /var/www/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 /var/www/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;
}
}
Reinicie o serviço Nginx
# systemctl restart nginx
Criar o arquivo info.php para testar a execução do PHP
# vim /var/www/html/info.php
<?php
phpinfo();
ESC+x (salva e sai do editor Vim)
No browser acesse http://IPSERVIDOR/info.php
Feito!
Nenhum comentário:
Postar um comentário