Instalar e Configurar NGINX e PHP-FPM no EC2 da Amazon
Estou configurando o NGINX em uma instância EC2 com Amazon Linux AMI 64 bits, como mostrado abaixo. O plano que iniciei para realizar as configurações é o gratuito mesmo que a Amazon libera por um ano.
Depois de ter criado a instância, levantado o servidor e feito o download da chave (.pem), vamos conectar no servidor via terminal. Obs: Recomendo você alocar um endereço de IP, indo no próprio painel no menu a esquerda em Elastic IPs e clicar em Allocate New Address e depois Associate Address
ssh -i minhachave.pem ec2-user@ip
Se houver problemas com permissões na sua chave, como por exemplo obter a mensagem Permissions 0664 for ‘minhachave.pem’ are too open. Um simples chmod 400 minhachave.pem resolve o problema.
Assim que conseguir conectar, vamos mudar para o super usuário com o seguinte comando:
sudo -s
1. Vamos atualizar o linux e ajustar configurações de tempo
yum -y update ln -sf /usr/share/zoneinfo/America/Cuiaba /etc/localtime
2. Instalar o servidor web Nginx e o PHP-FPM
yum install -y nginx php-fpm
3. Instalar as extensões necessárias para o Magento e outras extensões comuns
yum install -y php-devel php-mysql php-pdo php-pear php-mbstring php-cli php-odbc php-imap php-gd php-xml php-soap php-mcrypt
4. Instalar o PHP APC (Alternative PHP Cache)
yum install -y php-pecl-apc
5. Configurando o Nginx
Faça backup e edite o arquivo /etc/nginx/conf.d/virtual.conf
cd /etc/nginx/conf.d/ cp virtual.conf virtual.conf.bkp vim /etc/nginx/conf.d/virtual.conf
Deixe assim:
# # A virtual host using mix of IP-, name-, and port-based configuration # server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; location / { root /usr/share/nginx/html; index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; include fastcgi_params; } }
6. Configurar o PHP-FPM
Vamos fazer backup e editar o arquivo www.conf
cd /etc/php-fpm.d/ cp www.conf www.conf.bkp vim www.conf
Altere os seguintes parâmetros/blocos, deixando-os assim:
;listen = 127.0.0.1:9000 listen = /var/run/php-fpm/php-fpm.sock listen.owner = nginx ;listen.group = nobody listen.mode = 0664 ; RPM: apache Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx
7. Iniciando o PHP-FPM e o Nginx
service php-fpm start service nginx start
A esta altura, já temos nosso servidor funcionando e rodando páginas php. Agora vamos fazer com que eles sejam iniciados automaticamente quando nosso servidor for ligado.
chkconfig nginx on chkconfig php-fpm on
É isso aí! Espero que este tutorial tenha ajudado você a instalar e Configurar NGINX e PHP-FPM no EC2 da Amazon. Como sempre, se você achou esta postagem útil, inscreva-se em nossa newsletter gratuita ou siga-nos no Instagram @douglasvillar, conecte comigo no Linkedin e curta nossa página no Facebook.