WordPress sobre Lighttpd + APC em Squeeze (I)

logotipos light-and-wordpress

Olá amigos! Trago para vocês uma proposta de como publicar um Blog baseado em WordPress, com o Lighty como servidor de páginas web, o Spawn-FastCGI, PHP, o APC Alternative PHP Cache (Alternative PHP Cache), e tudo no Debian Squeeze. Esclareço que as traduções que faço do inglês para o espanhol são muito livres da minha parte e podem não ser totalmente precisas do ponto de vista linguístico ou semântico. Pessoalmente, eles são suficientes para mim.

E senhores, este artigo é apenas o “Porta de entrada”Para o fascinante mundo de servir páginas da web estáticas e / ou dinâmicas. Não sou um especialista em servidores web. Porém, muitos já me perguntaram qual servidor você prefere, Federico, com o Nginx, o Lighty ou o Apache? Sempre respondo isso com os três. Cada um tem seu charme e o Apache é o Apache. Em postagens futuras, abordaremos soluções como essa com Nginx e Apache. A propósito, há rumores na www Village sobre o fim do Lighty, e a verdade é que o Debian 7 ainda o mantém em seus repositórios. Para alguma coisa, certo?

Vamos ver:

  • Definições para iniciantes
  • Solução recomendada de Lighty
  • Solução que iremos abordar
  • Dados do servidor de amostra
  • Instalando os pacotes necessários
  • Configurando e verificando

Definições úteis para iniciantes

Servidores da web: É a tecnologia que possui programas de computador implícitos que processam aplicações que fazem conexões bidirecionais e / ou unidirecionais e síncronas ou assíncronas com o cliente, gerando ou transferindo uma resposta em qualquer linguagem ou aplicação do lado do cliente. […] Web Services surgiu da necessidade de padronizar a comunicação entre diferentes plataformas (PC, Mainframe, Mac, etc.) e linguagens de programação (PHP, C, Java, etc.). Tentativas de criação de padrões foram feitas anteriormente, mas falharam ou não tiveram sucesso suficiente, alguns deles são DCOM e CORBA, pois dependem da implementação do fornecedor DCOM - Microsoft e CORBA - ORB. […] Apesar de limitar o uso de Web services ao protocolo http, Web services não foram projetados para um determinado protocolo, ou seja, nada impedia o uso de SOAP sobre algum outro protocolo da Internet (SMTP, FTP, etc.). HTTP é usado principalmente porque é um protocolo amplamente usado e menos restrito por firewalls (portas como FTP geralmente são bloqueadas, mas o HTTP provavelmente não é bloqueado).

Lighttpd: Servidor Web para sistemas operacionais Unix / Linux e Microsoft Windows. Também conhecido como LeveÉ uma alternativa para o servidor web apache. Ele foi projetado para ser seguro, rápido (na verdade, muito rápido), compatível com os padrões e flexível. Especialmente projetado para suportar cargas pesadas sem perder o equilíbrio usando pouca RAM e pouca CPU. Oferece altas velocidades de resposta. Alguns sites que o utilizam são YouTube, Wikipedia e outros, que suportam um grande tráfego. É distribuído sob uma licença BSD.

De WikipediaCGI: Interface de entrada comum (em Inglês Interface de gateway comum, abreviado CGI) é uma tecnologia importante na World Wide Web que permite a um cliente (navegador da web) solicitar dados de um programa em execução em um servidor da web. CGI especifica um padrão para transferência de dados entre o cliente e o programa. É um mecanismo de comunicação entre o servidor web e uma aplicação externa cujo resultado final de execução são objetos MIME. Os aplicativos executados no servidor são chamados de CGIs.

CGI rápido é um protocolo para conectar programas interativos com um servidor web. FastCGI é uma variação da conhecida Common Gateway Interface (CGI ou Common Input Interface). O principal objetivo do FastCGI é reduzir a carga associada à conexão do servidor web e programas Ccomum Gcaminho Iinterface, que permite que um servidor atenda a mais solicitações ao mesmo tempo.

O Spawn, em Computing refere-se a uma função que carrega e executa um novo filho ou processo filho. O processo pai ou pai pode esperar que o processo filho termine ou pode continuar a ser executado de forma assíncrona. A criação de novos processos filho requer memória suficiente para executar o processo pai e o processo filho, ou vários processos filho.

Solução recomendada na documentação da Wiki Oficial da Lighttpd para alto desempenho

Se lermos o documento Documentos_ModFastCGI No site mencionado acima, há um parágrafo que, traduzido livremente para o espanhol de minha parte, diria:

Geração Externa: Executar os processos de Spawning do FastCGI diretamente no servidor da página da web tem algumas desvantagens, como:

  • O processo FastCGI só pode ser executado no servidor local.
  • Ele tem a mesma permissão do servidor da página da web.
  • Ele tem o mesmo diretório base do servidor de páginas da web.

Quando usamos um servidor CGI rápido Separar -ou Externo- para tirar alguma carga do servidor web, temos que controlar o processo FastCGI por meio de um programa externo, como "spawn-fcgi”. O programa "spawn-fcgi" é usado para iniciar o processo FastCGI em seu próprio ambiente, corrigir seu ID do usuárioid de grupo, e mude para outro diretório raiz (chroot).

Esclareço que a tradução de O Spawn como substantivo é "ovo de marisco”, Enquanto como um verbo, Desova significa mais ou menos "desova externamente”. Os ingleses brincam um pouco quando usam essa palavra na informática, certo?

O básico para fins práticos é que, por meio da solução proposta na documentação, o processo FastCGI e tantos processos secundários ou filhos (processos filhos) quantos forem necessários serão executados em um ou mais servidores externos ao servidor da página web. Que sendo executado em um servidor diferente do que usamos como servidor web, com certeza estará sujeito a uma carga menor. E, finalmente, para usar um servidor FastCGI externo, o processo FastCGI deve ser iniciado e controlado pelo programa spawn-fcgi.

Spawning externo é para aqueles que precisam instalar um ou mais servidores e atender a um grande número de solicitações, como no caso de um Provedor de Acesso à Internet (ISP), ou sites como blog.desdelinux.netetc. Explicar essa solução em detalhes está totalmente fora de nosso alcance.

Solução que iremos abordar no post

Apenas um servidor para acomodar todos os serviços necessários. Ele funciona e é adequado para um site de baixo desempenho, como uma LAN corporativa. O método explicado pode servir de guia para quem precisa de maior disponibilidade e segurança.

Dados do servidor de amostra

Nome: web.amigos.cu Endereço IP: 192.168.10.20 Domínio: amigos.cu

Claro, em um ambiente de produção - e mesmo de teste ou em casa - devemos ter os registros DNS direto e reverso que se referem ao nosso servidor.

Instalando os pacotes necessários

Como o usuário raiz nós executamos:

aptitude install lighttpd lighttpd-doc php5-cgi php5-gd aptitude install mysql-server mysql-client php5-mysql

Os arquivos de configuração do Lighty são instalados em / etc / lighttpd. O programa spwan-fcgi é instalado automaticamente. Os arquivos do pacote de documentação podem ser encontrados em / usr / share / doc / lighttpd-doc. Recomendamos fortemente a leitura da documentação, que está em inglês. Durante a instalação do pacote mysql-server, eles nos pedem a senha do usuário raiz para o MySql. Recomendamos usar a mesma senha que você já declarou para esse usuário.

Configurando e verificando

Como já terminamos a instalação do suporte WordPress, devemos começar pela configuração e testes.

Habilitamos módulos Lighty:

lighttpd-enable-mod fastcgi-php simple-vhost service lighttpd restart

Verificamos se nosso servidor funciona. Abrimos o navegador e escrevemos o URLhttp://web.amigos.cu, e pelo menos poderemos listar o diretório / Var / www.

Index of /

NOME ÚLTIMA MODIFICAÇÃO TAMANHO TIPO
Diretório Parental /                  -            Diretório
index.lighthttpd.html                    2013-Jan-19 18:16:41               3.5K            text / html
Ativamos os módulos mod_rewrite e mod_fast_cgi no arquivo de configuração principal do Lighty /etc/lighttpd/lighttpd.conf:
nano /etc/lighttpd/lighttpd.conf

Removemos o comentário ou o símbolo de hash # o que está na frente de "Mod_rewrite" e nós adicionamos abaixo dessa linha "Mod_fastcgi", de modo que o início do arquivo seja o seguinte:

server.modules = ("mod_access", "mod_alias", "mod_compress", "mod_redirect", "mod_rewrite", "mod_fastcgi",)

Verificamos se o PHP está funcionando corretamente. Para fazer isso, criamos um arquivo (temporariamente) no diretório / Var / www:

nano /var/www/index.php

e o conteúdo do arquivo anterior será apenas:


Em seguida, reiniciamos o serviço:

reiniciar serviço lighttpd

Se apontarmos em nosso navegador para http://web.amigos.cu, veremos a página de informações do PHP versão 5.3.3-7. Portanto, tudo funciona corretamente.

É muito interessante saber as mudanças na configuração do Lighty após habilitar o módulo mod_fastcgi. Por menos /etc/lighttpd/conf-enabled/15-fastcgi-php.conf, podemos descobrir. Compare a configuração lida com a da documentação do pacote lighttpd-doc.

Agora devemos dizer ao Lighty para qual diretório ele deve direcionar o tráfego pela porta 80, configurando um Host Virtual. Os valores que iremos modificar no arquivo /etc/lighttpd/conf-enabled/10-simple-vhost.confSão pessoais e vão responder às características de cada instalação. Aceitaremos os valores do diretório raiz do servidor e do diretório raiz dos documentos, que Lighty recomenda por padrão, e apenas modificaremos o nome FQDN do host virtual.

nano /etc/lighttpd/conf-enabled/10-simple-vhost.conf

E o conteúdo final do arquivo deve ser (lembre-se de adaptá-lo às suas necessidades):

# /usr/share/doc/lighttpd-doc/simple-vhost.txt server.modules + = ("mod_simple_vhost") ## A raiz do documento de um host virtual é document-root = ## simple-vhost.server-root + $ HTTP ["host"] + simple-vhost.document-root simple-vhost.server-root = "/ srv" simple-vhost.document-root = "htdocs" ## o host padrão se nenhum host for enviado simples -vhost.default-host = "web.amigos.cu"

Depois de salvar as alterações, procedemos à criação dos diretórios necessários de acordo com o que foi dito anteriormente. Diretório / srv Ele foi criado durante a instalação do Squeeze, portanto, não precisamos criá-lo:

mkdir -p /srv/web.amigos.cu/htdocs

Como já declaramos corretamente o host virtual e o diretório associado ao nosso nome de domínio, podemos dispensar os arquivos criados em / var / www e criar um novo. index.php mais personalizado no diretório / htdocs o diretório raiz dos documentos do host virtual:

rm /var/www/index.* nano /srv/web.amigos.cu/htdocs/index.php

Adicionamos o seguinte conteúdo ao arquivo anterior:

Olá amigos! Claro que tudo está bem

Salvamos as alterações e reiniciamos o serviço:

reiniciar serviço lighttpd

Vamos atualizar nosso navegador e verificar se a página exibida mudou e agora reflete, além da saída do comando phpinfo (), a saudação. Não será necessário reiniciar o serviço no futuro se alterarmos o conteúdo do index.php ou de outra página da web. Esta operação só será feita se alterarmos a configuração do Lighty.

E Parabéns amigos! Já temos um Debian 6.0 Squeeze com o servidor de página da web Lighttpd configurado para funcionar com a linguagem PHP5 e MySql como servidor de banco de dados. Também temos a configuração correta do arquivo Lighty Vhost para lidar com vários domínios.

Continuação ...

E então, como estou ?, o Sr. WordPress perguntará. Siga-nos no II parte e fim e no final deste artigo.

Screenshot_lighttpd


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   eliotime3000 dito

    Parabéns. Vou implementá-lo na minha máquina virtual.

    1.    fico dito

      Muito obrigado por seu comentário

  2.   Daniel dito

    Deus, que desktop lindo aquele do seu debian você poderia dizer tudo o que usou para esse tópico por favor?