WordPress över Lighttpd + APC i Squeeze (I)

ljus-och-wordpress-logotyper

Hej kompisar! Jag ger dig ett förslag på hur du publicerar en blogg baserad på WordPress, med Lighty som webbsideserver, Spawn-FastCGI, PHP, APC för alternativ PHP-cache (Alternativ PHP-cache) och allt i Debian Squeeze. Jag förtydligar att de översättningar jag gör från engelska till spanska är väldigt fria från min sida och kanske inte är helt korrekta ur en språklig eller semantisk synvinkel. Personligen räcker de för mig.

Och mina herrar, den här artikeln är bara "Entré” till den fascinerande världen av att betjäna statiska och/eller dynamiska webbsidor. Jag är ingen expert på webbservrar. Många har dock redan frågat mig vilken server du väljer, Federico, Nginx, Lighty eller Apache? Jag svarar alltid på det med alla tre. Var och en har sin charm och Apache Is The Apache. I framtida inlägg kommer vi att ta upp lösningar som denna med Nginx och Apache. Förresten, det går rykten i www Village om slutet på Lighty, och sanningen är att Debian 7 fortfarande har det i sina arkiv. Det måste vara av en anledning, eller hur?

Vi kommer att se:

  • Definitioner för nybörjare
  • Lösning rekommenderad av Lighty
  • Lösning vi tar upp
  • Exempel på serverdata
  • Installerar nödvändiga paket
  • Uppsättning och kontroll

Användbara definitioner för nybörjare

Webbservrar: Det är tekniken som involverar datorprogram som bearbetar applikationer genom att göra dubbelriktade och/eller enkelriktade och synkrona eller asynkrona anslutningar med klienten, generera eller tillhandahålla ett svar på vilket språk eller program som helst på klientsidan. […] Web Services uppstod ur ett behov av att standardisera kommunikationen mellan olika plattformar (PC, stordator, Mac, etc.) och programmeringsspråk (PHP, C, Java, etc.). Tidigare hade försök gjorts att skapa standarder men de misslyckades eller var inte tillräckligt framgångsrika, några av dem är DCOM och CORBA, eftersom de är beroende av implementeringen av DCOM-leverantören – Microsoft och CORBA – ORB. […] Trots att användningen av webbtjänster kraftigt begränsats till http-protokollet, var webbtjänsterna inte designade för ett visst protokoll, det vill säga ingenting hindrade användningen av SOAP över något annat internetprotokoll (SMTP, FTP, etc.). HTTP används huvudsakligen för att det är ett protokoll som är utbrett och är mindre begränsat av brandväggar (portar som FTP är i allmänhet blockerade, men HTTP är mycket troligt inte blockerad).

lighttpd: Webbserver för Unix/Linux och Microsoft Windows operativsystem. Också känd som LättÄr en alternativ till webbservern Apache. Den är designad för att vara säker, snabb (mycket snabb faktiskt), standardkompatibel och flexibel. Speciellt designad för att klara tunga belastningar utan att tappa balansen med lite RAM och lite CPU. Ger höga svarshastigheter. Vissa webbplatser som använder det är YouTube, Wikipedia och andra, som stöder stor trafik. Den distribueras under BSD-licensen.

De wikipediaCGI: Gemensamt inmatningsgränssnitt (på engelska Gemensamt gateway-gränssnitt, förkortat CGI) är en viktig World Wide Web-teknik som gör att en klient (webbläsare) kan begära data från ett program som körs på en webbserver. CGI specificerar en standard för överföring av data mellan klienten och programmet. Det är en kommunikationsmekanism mellan webbservern och en extern applikation vars slutresultat av exekveringen är MIME-objekt. Applikationerna som körs på servern kallas CGI:er.

FastCGI är ett protokoll för att koppla interaktiva program till en webbserver. FastCGI är en variant av det välkända Common Gateway Interface (CGI). Huvudmålet med FastCGI är att minska belastningen i samband med att ansluta webbservern och programmen CEMENSAM Gåtväg Interface, vilket gör att en server kan betjäna fler förfrågningar på en gång.

spawn, i datoranvändning hänvisar till en funktion som laddar och exekverar en ny sekundär eller underordnad process. Den överordnade processen kan vänta tills den underordnade processen är klar, eller så kan den fortsätta exekveringen asynkront. Att skapa nya underordnade processer kräver tillräckligt med minne för att utföra den överordnade processen och den underordnade processen, eller flera underordnade processer.

Lösning rekommenderas i dokumentationen för den officiella wikin för lighttpd för bra prestanda

Om vi ​​läser dokumentet Docs_ModFastCGI Från den tidigare nämnda webbplatsen finns det ett stycke som mycket fritt översatt till spanska från min sida skulle säga:

Extern lek: Att köra FastCGI Spawning-processer direkt på webbsideservern har några nackdelar som:

  • FastCGI-processen kan bara köras på den lokala servern.
  • Den har samma behörighet som webbsideservern.
  • Den har samma baskatalog som webbsideservern.

När vi använder en server FastCGI Separat -eller Extern- för att ta lite belastning på webbservern måste vi styra FastCGI-processen med hjälp av ett externt program som "spawn-fcgi”. Programmet "spawn-fcgi" används för att starta FastCGI-processen i sin egen miljö, ställ in dess användar IDgrupp-id, och byt till en annan rotkatalog (chroot).

Jag klargör att översättningen av spawn som substantiv är det "skaldjursägg", medan som ett verb, Lek betyder mer eller mindreleker externt”. Engelsmännen skämtar lite när de använder det ordet i datoranvändning, eller hur?

Det väsentliga för praktiska ändamål är att, med hjälp av lösningen som föreslås i dokumentationen, kommer FastCGI-processen och så många sekundära eller underordnade processer som behövs att exekveras på en eller flera servrar utanför webbsideservern. Eftersom de körs på en annan server än den vi använder som webbserver så kommer den givetvis att utsättas för en lägre belastning. Och slutligen, för att använda en extern FastCGI-server måste FastCGI-processen startas och kontrolleras av programmet spawn-fcgi.

Extern Spawning är för dig som behöver installera en eller flera servrar och hantera ett stort antal förfrågningar, till exempel en Internet Access Provider (ISP), eller webbplatser som blogg.desdelinux. Net, etc. Att förklara den lösningen i detalj är helt utom räckhåll för oss.

Lösning som vi tar upp i inlägget

Endast en server för att rymma alla nödvändiga tjänster. Det fungerar och är lämpligt för en webbplats med blygsamma funktioner, såsom ett Business LAN. Den förklarade metoden kan fungera som en guide för dem som behöver större tillgänglighet och säkerhet.

Exempel på serverdata

Namn: web.amigos.cu IP-adress: 192.168.10.20 Domän: friends.cu

Naturligtvis, i en produktionsmiljö – och till och med testning eller internt – måste vi ha stockarna DNS direkta och omvända som hänvisar till vår server.

Installerar nödvändiga paket

Som användare rot vi utför:

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

Lighty-konfigurationsfilerna är installerade på /etc/lighttpd. Programmet spwan-fcgi Den installeras automatiskt. Dokumentationspaketfilerna finns på /usr/share/doc/lighttpd-doc. Vi rekommenderar starkt att du läser dokumentationen, som är på engelska. Under paketinstallation mysql-server, frågar de oss om användarens lösenord rot för MySql. Vi rekommenderar att du använder samma lösenord som du redan har deklarerat för den användaren.

Uppsättning och kontroll

När vi är klara med att installera WordPress-support måste vi börja med konfiguration och testning.

Vi aktiverar Lighty-moduler:

lighttpd-enable-mod fastcgi-php simple-vhost-tjänst lighttpd omstart

Vi kontrollerar om vår server fungerar. Vi öppnar webbläsaren och skriver URL:enhttp://web.amigos.cu, och vi kommer åtminstone att kunna lista katalogen / Var / www.

Index of /

NAMN SENAST ÄNDRAD STORLEK TYP
Föräldrakatalog/                  -            katalog
index.lighttpd.html                    2013-Jan-19 18:16:41               3.5K            text / html
Vi aktiverar modulerna mod_rewrite och mod_fast_cgi i huvudkonfigurationsfilen för Lighty /etc/lighttpd/lighttpd.conf:
nano /etc/lighttpd/lighttpd.conf

Vi tar bort kommentaren eller hashsymbolen # som är framför "mod_rewrite" och vi lägger till under den raden "mod_fastcgi", så att början av filen ser ut så här:

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

Vi kontrollerar att PHP fungerar korrekt. För att göra detta skapar vi en fil (tillfälligt) i katalogen / Var / www:

nano /var/www/index.php

och innehållet i den föregående filen kommer endast att vara:


Sedan startar vi om tjänsten:

service lighttpd starta om

Om vi ​​pekar i vår webbläsare till http://web.amigos.cu, kommer vi att se informationssidan för PHP version 5.3.3-7. Därför fungerar allt korrekt.

Det är mycket intressant att veta ändringarna i Lighty-konfigurationen efter att modulen har aktiverats mod_fastcgi. Förbi less /etc/lighttpd/conf-enabled/15-fastcgi-php.conf, vi kan ta reda på det. Jämför den lästa konfigurationen med den i paketdokumentationen lighttpd-doc.

Nu måste vi tala om för Lighty till vilken katalog den ska dirigera trafik genom port 80, genom att konfigurera en virtuell värd. Värdena som vi kommer att ändra i filen /etc/lighttpd/conf-enabled/10-simple-vhost.conf, är personliga och kommer att svara på egenskaperna hos varje installation. Vi kommer att acceptera värdena för serverns rotkatalog, och rotkatalogen för dokumenten, som Lighty rekommenderar som standard och vi kommer bara att ändra FQDN-namnet för den virtuella värden.

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

Och det slutliga innehållet i filen bör vara (kom ihåg att anpassa det efter dina behov):

# /usr/share/doc/lighttpd-doc/simple-vhost.txt server.modules += ("mod_simple_vhost" ) ## Dokumentroten för en virtuell värd är document-root = ## simple-vhost.server-root + $HTTP["host"] + simple-vhost.document-root simple-vhost.server-root = "/srv" simple-vhost.document-root = "htdocs" ## standardvärden om ingen värd skickas enkelt -vhost.default-host = "web.amigos.cu"

Efter att ha sparat ändringarna fortsätter vi att skapa de nödvändiga katalogerna enligt vad som anges ovan. Katalogen / srv Det skapades under Squeeze-installationen, så vi behöver inte skapa det:

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

Eftersom vi korrekt har deklarerat den virtuella värden och katalogen som är associerad med vårt domännamn, kan vi avstå från filerna som skapats i /var/www, och skapa en ny index.php mer personlig i katalogen / htdocs o rotkatalogen för de virtuella värddokumenten:

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

Vi lägger till följande innehåll till föregående fil:

Hej kompisar! Jag är säker på att allt ser bra ut.

Vi sparar ändringarna och startar om tjänsten:

service lighttpd starta om

Låt oss uppdatera vår webbläsare och kontrollera att den visade sidan har ändrats och nu återspeglar, förutom kommandots utdata phpinfo (), hälsningen. Det kommer inte att vara nödvändigt att starta om tjänsten i framtiden om vi ändrar innehållet på index.php eller annan webbsida. Denna operation kommer bara att göras om vi ändrar Lighty-konfigurationen.

Och grattis vänner! Vi har redan en Debian 6.0 Squeeze med webbsideservern Lighttpd konfigurerad för att fungera med PHP5-språket och MySql som en databasserver. Vi har också rätt konfiguration av Lighty Vhost-filen för att hantera flera domäner.

Fortsättning följer…

Och sedan, hur mår jag?, frågar herr WordPress. Följ oss på II del och slut och slutet av denna artikel.

Screenshot_lighttpd


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   eliotime3000 sade

    Grattis. Jag kommer att implementera det i min virtuella maskin.

    1.    phico sade

      Tack så mycket för din kommentar

  2.   Daniel sade

    Gud, vilket vackert skrivbord ditt borde vara, kan du säga allt du använde för det ämnet?