Kunskapsdokument - Webbserver

En webbserver används för att visa dynamiska hemsidor. En dynamisk hemsida bygger på ett script som kan hämta information från exempelvis en databas, processa detta data till html-kod som sedan visas upp hemsidan.

Lokal miljö

De allra flesta utvecklar hemsidor på den lokala datorn och då är det skönt att kunna utveckla även dynamiska sidor på den lokala datorn. För att detta skall vara möjligt så behöver du installera en webbserver.

En webbserver består av flera olika delar, en databas, en applikation som tar hand om kommunikationen mellan de olika delarna inom webbservern och sedan den delen som gör om den dynamiska sidans kod till html-kod. Denna delen är olika beroende på vilket scriptspråk som används.

Om du inte vill installera webbservern som ett paket så går det att installera varje del för sig, detta kräver dock att du måste anpassa dessa tre i förhållande till varandra och detta kan ibland vara lite trixigt.

XAMPP

I denna kurs rekommenderar jag att vi använder XAMPP vilket innehåller alla de tre delarna ovan och är möjlig att använda på alla plattformar. Det finns andra specifika paket med alla dessa delar för olika operativsystem, MAMP för Mac osX, WAMP för Windows och LAMP för Linux.

XAMPP är en förkortning som står för X (flera plattformar), A (apache, webbservern), M (MySQL, databasen), P (PHP, scriptspråket vi använder i kursen) och P (Perl, ett annat scriptspråk).

Jag kommer inte supporta någon annan lösning än XAMPP!

Installation av XAMPP för Windows

Innan du installerar XAMPP så se till att du har installerat och konfigurerat synkroniseringen med Google Drive på rätt sätt.

Vi börjar med att ladda ner senaste versionen av XAMPP för det operativsystem vi använder. Gå till https://www.apachefriends.org/index.html och ladda ner filen.

När filen är nedladdad är det bara att starta igång installationen. Först kan du få en varning om att XAMPP inte bör installeras i Programmappen men det kommer vi ändå inte att göra. Klicka ok för att komma vidare.

Bild

När du kommer till denna rutan så får du välja vad som skall installeras. I XAMPP finns det några tillägg som inte finns till alla de andra webbserverpaketen och jag väljer att inte installera de saker som jag vet att vi inte behöver under kursen.

Bild

Se till att XAMPP installeras i en egen mapp direkt under C:\.

Bild

Bitnami har lite enklare installationspaket för olika produkter som liknar den snabbinstallationen som vi gjorde av WordPress hos Binero. Om du vill installera WordPress på din lokala webbserver, vilket jag rekommenderar om du vill leka fritt med en applikation som inte är publik, så tycker jag att du skall göra en normal installation för att lära dig hur den fungerar.

Vi kryssar ur rutan och väljer Next>.

Bild

Installationen är klar.

Bild

Apache är vår webbserver och den är förberedd för att ta emot trafik från nätet. Rent praktiskt kan du nu sätta upp en egen webbserver som kopplas till internet med allt vad det innebär i möjligheter och risker. Här behöver du göra en inställning så att brandväggen vet hur den skall hantera apache och eventuella anrop utifrån.

Bild

Allt funkar.

Bild

Välj det språk du vill.

Bild

När allt är klart så kommer du till XAMPP's panel. Det är därifrån du styr Apache och MySQL (jag lyckades också få med mig FileZilla i min första installation, det är FileZilla Server och inte klienten)

Det är här du startar och stoppar de servrar som du vill ha igång.

Konfiguration

Dags att konfigurera XAMPP så att vi får den att fungera enligt våra behov.

Om du vill kika att XAMPP fungerar så kan du starta Apache och sedan skriva in http://localhost/ i en webbläsare så kommer du skickas till webbserververns startsida. Det är bl.a. den vi skall ändra så att vi kommer till vår egen webroot.

Bild

Börja med att skapa en mapp som du döper till web_root, eller något liknande, och som gärna ligger på ett ställe som säkerhetskopieras. På bilden ser du hur jag har lagt denna under Google Drive.

Bild

Klicka sedan på config för Apache och välja att redigera filen httpd.conf. Öppna den gärna i din ordinarie kodeditor, jag tror att det går att ställa in vilket program som skall öppna filen genom att klicka på Config i högerspalten.

När filen är öppen så skall du leta efter två kodrader som ligger på rad 251 och 253.
OBS: I denna fil måste du vara väldigt nogrann, blir det fel i denna filen så kommer inte webbservern starta upp med rätt inställningar eller inte starta upp alls. Vill du kommentera bort en kodrad (den som fungerar) så använd hash-tag i början av raden.

Det som står i filen är följande:

httpd.conf (orginal)

251: DocumentRoot "C:/xampp/htdocs"
252:
253: <Directory "C:/xampp/htdocs">

Detta skalla bytas mot adressen till din webroot. Hos mig blev det så här.

httpd.conf (efter ändring)

251: DocumentRoot "G:/Min enhet/web_root"
252:
253: <Directory "G:/Min enhet/web_root">

Starta sedan Apache, eller starta om den om den redan varit påslagen. För att en konfigurationsändring skall slå igenom så behöver en server startas om då konfigurationsfilen läses in när servern startas.

När du startat om kan du återigen skriva in http://localhost/ i en webbläsare och förhoppningsvis kommer det se ut som på bilden nedan. Eventuellt kan du redan ha dokument i den mappen, då kommer dessa att listas.

Bild

Felhantering

Det går att ställa in om felmeddelande skall visas när sådana uppstår i php-koden. Jag har i mina installationer för XAMPP sett att detta är förinställt men om sidan blir helt vit och inga felmeddelanden visas så behöver du söka upp den konfigurationsfil som laddas när XAMPP startas. Filen heter php.ini och exakt var den ligger hittar du genom att söka efter Loaded Configuration File i phpinfo()-filen. I den filen söker du efter display_errors och den bör ha värdet Off. Sätt denna till On och starta sedan om Apache ifrån XAMPP's kontrollpanel.