Posted in:

Tutorial de instalação do NGINX, PHP-FPM e MYSQL para lojas virtuais Magento

Aprenda a reduzir o consumo de memória RAM e CPU, e torne sua aplicação extremamente escalável.

  1. kodo

kodo

Por que utilizar Nginx e PHP-FPM no lugar do Apache e PHP na sua versão normal?

Pois estes foram feitos para serem escaláveis e seus principais benefícios são o consumo muito inferior de memória RAM e CPU. Além disso, auxilia a tornar seus custos com servidor menores e torna sua aplicação extremamente escalável.

Aprenda com o tutorial de instalação do NGINX, PHP-FPM e MYSQL para lojas virtuais Magento:

Passo 1: Instalando o MySQL

Primeiramente, faça a atualização do seu Linux:

sudo apt-get update

Para instalar o MySQL:

sudo apt-get install mysql-server php5-mysql

Durante a instalação do Mysql será solicitado para colocar a senha principal, caso você não a tenha neste momento, é fácil adicionar essa senha mais tarde com o shell do MySQL.

Uma vez instalado, é necessário ativá-lo, com o comando:

sudo mysql_install_db

Agora, termine com o seguinte comando:

sudo /usr/bin/mysql_secure_installation

Durante a instalação do “mysql securte”, será solicitado a você, digitar novamente uma senha para o root.

Passo 2: Instalando e configurando o PHP-FPM

Nestes passos iremos instalar o PHP 5.6 no modo PHP-FPM, e também, iremos instalar as extensões PHP que o magento utiliza.

Comando para instalar tudo:

apt-get install php5-fpm php5-mhash php5-mcrypt php5-curl php5-cli php5-mysql php5-gd php5-xsl php5-json php5-intl php-pear php5-dev php5-common php-soap libcurl3 curl –y

Agora, precisamos habilitar manualmente a extensão “php5-mycrypt” criando um link no diretório “conf.d.”, utilizando os comandos abaixo:

cd /etc/php5/fpm/conf.d
sudo ln -s ../../mods-available/mcrypt.ini
cd /etc/php5/cli/conf.d
sudo ln -s ../../mods-available/mcrypt.ini

Agora, edite o php.ini para “FPM” e o “cli”:

sudo nano /etc/php5/fpm/php.ini
sudo nano /etc/php5/cli/php.ini

Então, aumente o limite da memória e o tempo de execução do php adicionando as seguintes linhas no “php.ini”:


memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = On

Salve e saia. Agora, reinicie o “PHP-FPM”: “sudo service php5-fpm restart”

Passo 3: Instalando e configurando o Nginx

Para instalar o Nginx, neste tutorial foi utilizado o Ubuntu em suas versões mais recentes. Para utilizar com outra distribuição Linux, será necessário apenas algumas mudanças nos comandos.

Comando para instalar o Nginx:

Nginx: apt-get install nginx –y

Após instalar, abra o arquivo Virtual host:

sudo nano /etc/nginx/sites-available/default

E cole o comando abaixo dentro do arquivo:

server {
listen   80;
root /usr/share/nginx/www;
index index.php index.html index.htm;
server_name examplo.com.br;
location / {
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on the php-fpm socket
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

Detalhes da modificação:

– Adicionado o “index.php” na linha do index

– Mude o server_name para o nome do seu domínio ou IP do servidor.

Agora reinicie o nginx:

 sudo service nginx restart

Passo 4: Instalando o Magento

Após feito todos os passos acima, você pode fazer a instalação do magento baixando a versão mais atual no site oficial https://magento.com/. Descompacte o arquivo dentro do seu servidor e acesse o seu IP ou domínio. Posteriormente, basta seguir os passos de instalação que o magento lhe trará.

Espero que este tutorial tenha sido útil para você.

Fique ligado nas atualizações destas tecnologias e mande bem na loja virtual de sua empresa!

Posted in:
SOBRE O AUTOR

Joabel Kasper

Joabel Kasper

Formado em Ciência da Computação e atualmente cursando Gestão e Governança da Tecnologia da Informação. Trabalha na área à 7 anos como programador e Gerente de Tecnologia.

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *