Installere (L)AMP på Ubuntu 24.04 - Teknologiforståelse (IM-IKM vg1) - NDLA

Hopp til innhold
Veiledning

Installere (L)AMP på Ubuntu 24.04

LAMP er et akronym for Linux, Apache, MySQL og PHP. Disse er sentrale systemer som de fleste dynamiske nettsider trenger for å fungere. Denne guiden går gjennom installasjon av (L)AMP på Ubuntu 24.04.

Installasjon av Wordpress

I denne guiden installeres webserver (Apache2), database (MariaDB) og støtte for at skriptspråket PHP skal kunne kjøre på serveren. Disse danner rammeverket vi trenger for å kunne sette opp en dynamisk nettside (Wordpress). Alle programmer i denne guiden er gratis og bruker en åpen kildekode som gjør dem lette å forandre og sikre.

Denne guiden er tilpasset for installasjon av Wordpress. Hvis du ønsker å bruke et annet publiseringssystem (CMS – Content Management System), bør du ikke bruke denne guiden.

Installere webserver

Apache Web Server brukes på en femtedel av verdens webservere (2023). Programvaren gjør at serveren kan svare på HTTP-forespørsler sendt fra en nettleser.

Steg 1: Installer Apache2-programvare

Skriv eller kopier inn kommandoen under for å installere Apache2 webserver på din server.

Bash
1sudo apt install apache2

Linux vil gjøre et søk for å se hvilke programpakker som vil trenges for å gjøre installasjonen. Du må bekrefte installasjonen ved å trykke på "y" og Enter.

Steg 2: Automatisk oppstart av webserver

Det er ønskelig at webserver-programvaren starter automatisk når datamaskinen starter opp. Kommandoen under sikrer dette.

Bash
1sudo systemctl enable apache2

Steg 3: Sjekk prosess-status for webserver

Siden flere programmer må installeres og fungere sammen for at en dynamisk nettside skal fungere, er det lurt å sjekke underveis at hvert enkelt program som installeres, starter opp og kjører som normalt. Sjekk med kommandoen under at Apache er aktiv.

Bash
1sudo systemctl status apache2
2  #Trykk "q" for å komme ut av statusvisningen 

Når koden kjører, vil du få opp et skjermbilde som det som vises i bildet under. Legg merke til at denne statusvisningen ikke tar deg direkte tilbake til Linux sin ledetekst. Du må trykke på "q" for å avslutte statusvisningen.


Steg 4: Sjekk at webserver svarer nettleser

Åpne opp nettleser på en annen maskin i samme lokalnettverk som webserveren. Hvis du installerte Ubuntu Desktop på serveren din, kan du bruke nettleseren til denne.

I nettleserens adressefelt skriver du inn IP-adressen som du satte under installasjon av din server. Hvis det ikke er noen feil, skal du få opp Apache2 sin demoside. Hvis du ikke får opp nettsiden, vil du trenge å gjøre feilsøking før du går videre i guiden.

Demosiden ligger som ei HTML-fil i mappa /var/www/html på webserveren. Dette er standardplassering for Apache2-websider. Hvis du ønsker å se nærmere på denne fila, kan du bruke kommandoen sudo nano /var/www/html/index.html . Husk eventuelt å bruke Ctrl + x for å komme ut av teksteditoren etterpå.

Installere database

En webserver er i utgangspunktet veldig åpen. Hvis innhold legges i webservermappa (/var/www/html), vil webserveren levere disse ut hvis den blir spurt. Dette er praktisk for helt statiske nettsider (som er hardkodet og viser identisk innhold til alle). Men hvis en nettside skal være dynamisk (så den kan logges på og vise forskjellig innhold til forskjellige brukere), så skaper dette sikkerhetsproblemer. Vi ønsker ikke at sensitiv informasjon skal ligge åpen på nettet. Et annet eksempel er brukernavnene og passordene til brukerne som kan logge seg på via nettsiden. Her kommer databaser inn. Databasen får ansvaret for å lagre mye av denne informasjonen. Databasen svarer ikke på henvendelser direkte til sluttbrukeren, men svarer webserveren gjennom PHP-scripting.

Det finnes mange databasevarianter, i denne guiden bruker vi MariaDB.

Steg 1: Installer database

Bruk kommandoen under for å installere MariaDB. Som tidligere vil du få opp ei liste over programpakker som vil bli installert. Bekreft installasjonen med "y" og Enter.

Bash
1sudo apt install mariadb-server mariadb-client

Steg 2: Automatisk oppstart av database

For å automatisk starte databasen ved oppstart av serveren bruker du kommandoen under:

Bash
1sudo systemctl enable mariadb

Steg 3: Sjekk prosess-status for databasen

Bash
1systemctl status mariadb
2  #Trykk "q" for å komme ut av statusvisningen 

Steg 4: Basiskonfigurasjon av database

Siden databasen potensielt vil inneholde informasjon som vi ikke ønsker at skal være åpent tilgjengelig, er det lurt å sikre den. Til dette finnes det et skript som også tar seg av rootbruker-oppsett.

Bash
1sudo mysql_secure_installation

Skriptet vil sikre databaseoppsettet og vil derfor stille en rekke spørsmål.

  1. Skriptet vil spørre etter nåværende root-passord for database. Trykk på Enter for å gå videre, siden du ikke har satt et passord enda.

  2. Du blir så spurt om du ønsker å sette et root-passord. Velg "y" og trykk på Enter.

  3. Skriv inn passordet du vil ha til root-brukeren til databasen. Trykk på Enter for å gå videre. Tekstfeltet for passord vil ikke forandre seg mens du skriver inn passordet, det vil si ingen stjernetegn for å vise antall tegn, dette er helt normalt.

  4. Skriv passordet på nytt og trykk på Enter.
  5. Du blir spurt om du vil slette anonym bruker, velg "y" og trykk på Enter.
  6. Du blir spurt om root-brukerpålogging skal begrenses til den lokale maskinen. Bekreft ved å trykke på "y" og Enter.

  7. Du blir spurt om du ønsker å fjerne test-database. Bekreft dette ved å trykke på "y" og Enter.
  8. Til sist blir du spurt om du ønsker å laste inn tabell med rettigheter på nytt. Velg "y" og trykk på Enter.

Steg 5: Sjekk at databasepålogging fungerer

Bruk kommandoen under for å logge inn i databasen:

Bash
1sudo mariadb -u root

Skriv inn passordet du satte på root-brukeren til databasen. Når du er logget inn, skal du få opp en skjerm som ligner den på bildet under.

Når du er inne i databaseprogrammet, vil du få en ny ledetekst – Maria DB [(none)]> For å komme ut av programmet må du bruke kommandoen under:

Text
1exit;

Installere PHP

PHP (PHP: Hypertext Preprocessor) er et skriptspråk som kjører på serversiden og gjør det mulig å koble sammen webserver og database. PHP er også viktig for å gjøre nettsidene dynamiske.

Det finnes i dag ikke et fullverdig alternativ til PHP. Men flere er under utvikling og vil sannsynligvis bli vanlige etter hvert.

Steg 1: Installer basispakker for PHP

I første omgang trenger du å installere PHP og noen tilleggspakker som trengs for bruk av PHP sammen med dynamiske nettsider. Som tidligere vil du få opp ei liste over programpakker som vil bli installert. Bekreft installasjonen med "y" og Enter.

Bash
1sudo apt install php libapache2-mod-php php-mysql php-common

Steg 2: Installer tilleggspakker for PHP

Publiseringssystemet Wordpress trenger noen tilleggspakker for PHP for å fungere riktig. Installer disse ved å bruke kommandoen under og bekreft installasjonen.

Bash
1sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Steg 3: Test at PHP fungerer sammen med webserver

For å sjekke at PHP er satt opp riktig og fungerer sammen med Apache kan vi lage en enkel PHP-forespørsel og gjøre den tilgjengelig gjennom webserveren.

Ved å bruke kommandoen under lages ei ny fil (info.php) i hovedmappa for webserveren (/var/www/html).

Bash
1sudo nano /var/www/html/info.php

Legg inn følgende kode i dokumentet:

Text
1<?php phpinfo(); ?>

Trykk på (Ctrl + x) og bekreft lagringen av fila.

Gå inn i nettleseren og skriv inn IP-adresse til webserver etterfulgt av /info.php.

For eksempel:

192.168.1.41/info.php

Du skal nå få opp en PHP-statusside.

Hvis du fikk opp denne siden, er du klar for å gå videre med selve oppsettet av Wordpress.

Skrevet av Tron Bårdgård.
Sist faglig oppdatert 23.06.2024