Algum tempo atrás Eu falei sobre esta série de tutoriais, sobre como instalar e configurar um servidor para hospedagem de alta demanda. Este artigo será sobre como instalar e configurar Nginx + PHP com SpawnFastCGI:
Spawn_FastCGI:
Pode-se dizer que é o que conecta o Nginx com o PHP, ou seja, mesmo que tenham o pacote PHP5 instalado se não tiverem o Spawn_FastCGI instalado e executado ao abrir um site em PHP o navegador fará o download do arquivo, não mostrará nada que o .php foi programado porque o servidor não sabe como processar arquivos .php, por isso é essencial instalar e configurar Spawn_FastCGI.
Se usássemos o Apache, seria algo tão simples quanto instalar o pacote libapache2-mod-php5, mas como usamos o Nginx, teremos que instalar o pacote spawn-fcgi. Além disso, no tutorial, explicarei como criar um script inicial para ele em /etc/init.d/ para que você possa controlá-lo de forma mais confortável.
1. Instalação:
Vamos começar com a primeira coisa, instalar Spawn-FastCGI e PHP de nossos repositórios.
Se em seu servidor você usa uma distribuição como Debian, Ubuntu ou algum derivado no terminal, você deve colocar o seguinte e pressionar Entrar :
aptitude install spawn-fcgi php5-cgi php5-curl
2. Configuração:
Na etapa anterior (quando instalamos o Nginx) baixamos um arquivo chamado nginx-spawn-fastcgi.tar.gz que ao descompactá-lo criou a pasta nginx-spawn-fastcgi em nossa casa, copiaremos o arquivo dela spawn-fastcgi para /etc/init.d/:
cp ~/nginx-spawn-fastcgi/spawn-fastcgi /etc/init.d/
Além disso, precisamos do executável php-fastcgi em / usr / bin /
cp ~/nginx-spawn-fastcgi/php-fastcgi /usr/bin/
Perfeito, preparamos o arquivo que nos permitirá controlar o spawn-fastcgi e também o executável php-fastcgi, agora vamos iniciar o spawn-fastcgi:
/etc/init.d/spawn-fastcgi start
Isso vai nos mostrar algo como: spawn-fcgi: filho gerado com sucesso: PID: 3739
Agora vamos substituir nosso arquivo /etc/nginx/sites-available/mywebsite.net por ~ / nginx-spawn-fastcgi / mywebsite_plus_php.net
cp ~/nginx-spawn-fastcgi/mywebsite_plus_php.net /etc/nginx/sites-available/mywebsite.net
Por quê? Simples, porque nosso arquivo mywebsite.net anterior não tem suporte para PHP, ou seja, é apenas Nginx, enquanto o arquivo mywebsite_plus_php.net tem suporte para PHP, ou seja, Nginx + PHP usando SpawnFastCGI.
As diferenças entre esses arquivos são várias, por exemplo:
- Na linha 3, o arquivo que suporta PHP é adicionado index.php
- Uma nova linha no No.3 que contém: fastcgi_index index.php;
- Várias outras novas linhas que dizem ao Nginx como processar PHP.
- … .. enfim, aqui está uma foto que o ajudará a saber as diferenças entre os dois arquivos:
O arquivo mywebsite_plus_php.net é um vhost que serve de exemplo, ou seja, devemos modificá-lo e estabelecer nossas configurações.
Devemos mudar o seguinte:
- access_log (linha 3): Este será o caminho do arquivo de log de acesso a este site
- error_log (linha 4): Este será o caminho do arquivo de log de erros para este site
- nome_servidor (linha 5): A URL, domínio que está hospedado nessa pasta, por exemplo, se fosse o fórum DesdeLinux seria: nome_servidor fórum.desdelinux.net
- root (linha 6): O caminho para a pasta onde estão os arquivos html, vamos deixar em / var / www / pois será apenas um teste
Pronto, agora vamos reiniciar o Nginx:
/etc/init.d/nginx restart
Para verificar se nosso Nginx processa o PHP corretamente, vamos copiar o arquivo phptest.php para a pasta hospedada, ou seja, aquela indicada na linha nº 6 do arquivo mywebsite_plus_php.net (por exemplo, root / var / www /), assumindo que ter o site hospedado diretamente em / var / www / seria:
cp ~/nginx-spawn-fastcgi/phptest.php /var/www/
Supondo que na linha 5 de nosso mywebsite_plus_php.net (ou seja, a linha server_name) dissemos que nosso site é www.mysite.net, devemos acessar www.mysite.net/phptest.php. Em outras palavras, a ideia é acessar o arquivo phptest.php de nosso navegador e se o seguinte aparecer então nosso Nginx vinculado perfeitamente com PHP:
Caso não apareça, ou seja, que o navegador tenta baixar o arquivo .php ... isso significa que eles fizeram algo errado, que não substituíram /etc/nginx/sites-available/mywebsite.net por ~ / nginx-spawn-fastcgi / mywebsite_plus_php.net… que se esqueceu de reiniciar o Nginx com /etc/init.d/nginx restart ou que se esqueceu de iniciar Spawn-FastCGI com /etc/init.d/spawn-fastcgi start
É isso no tutorial para vincular Nginx com PHP usando SpawnFastCGI, só precisamos de MySQL e APC
Espero que seja interessante para você.
Se for um quarto, por que a imagem diz 3? começou em 0, eu acho? excelente postagem.
lembranças
1ª: Apresentação
2ª: Nginx
3º: Nginx + PHP (Spawn_FastCGI)
🙂
Obrigado por ler ^ _ ^
o que aconteceu com a parte 4 ???
e com o subsequente ?????
Olá:
Seria uma escolha melhor se em vez de mysql, você usasse MariaDB, como você deve saber, este último é um fork do primeiro, e já se fala que será o Mysql do futuro (http://www.genbetadev.com/bases-de-datos/mariadb-sera-el-mysql-del-futuro) já que o Mysql é gratuito, até certo ponto.
SkySQL, uma empresa que fornece serviços de bancos de dados gratuitos, apoiou financeiramente o projeto MariaDB (http://www.genbetadev.com/bases-de-datos/mariadb-y-skysql-unen-fuerzas-para-llevar-a-mariadb-a-lo-mas-alto) e o Google que quer deixar de depender do Mysql, como também fez a Wikipedia, e fará a transição do MySQL 5.1 para o MariaDB 10.0 com a ajuda, justamente, do SkySQL, que já é especialista na área.
olá2.
Olá,
Sim claro, conheço o MariaDB e aliás, já falamos sobre isso: https://blog.desdelinux.net/tag/mariadb/
No entanto, agora estou usando MySQL porque faço esses tutoriais a partir da experiência particular que tive ao migrar do Linux (com todos os seus serviços) para outros servidores, naquela época nós mudamos completamente a tecnologia e as tarefas ou mudanças que tive que enfrentar não foram poucos.
Leia este meu comentário daquele momento: https://blog.desdelinux.net/el-blog-desdelinux-abandona-hostgator-y-pasa-a-gnutransfer/comment-page-1/#comment-81291
A ideia final é sim, migre para MariaDB, mas ainda não tive tempo de fazer os testes relevantes 🙂
Obrigado pela leitura
Este tutorial vai me ajudar a instalar o zPanel X com NGINX para não saturar meu site ao migrar para o GNUPanel VPS.
O presente de Natal? Eu estava ansioso para dar os parabéns a todos.
Obrigado parceiro 😀
Adicionado aos favoritos!
A propósito, eu tenho essa dúvida e pergunta, o Nginx realmente tem mais desempenho do que o Apache?
Saudações!
Bem, o Apache pode ser muito otimizado, mas ... até agora, o Google e quase todos nós concordamos que o Nginx consome muito menos RAM, tem um desempenho não desprezível, embora não seja tão simples na hora de configurar.
Bom KZKG ^ Gaara excelentes informações para aqueles de nós que se interessam por este mundo, uma dúvida, para quando o 4º post 😀