Velg en side

Her beskrives installasjon av apache2, konfigurasjon og testing.

Oppdatere server

Først oppdatere server.

brukernavn@servernavn:~$ sudo apt update

Installere Apache 

Så installeres Apache Webserver

brukernavn@servernavn:~$ sudo apt install apache

Sjekke status

Sjekke om apache kjører etter installasjonen

brukernavn@servernavn:~$ sudo service apache2 status

Sjekke brannmur (ufw) for apache

Vi ser at Apache ligger i app list i ufw (brannmur).

brukernavn@servernavn:~$ sudo ufw app list

ufw applist

Sjekke apache info i ufw

brukernavn@servernavn:~$ sudo ufw app info «Apache Full»

Info bør være:

  • Profile: Apache Full
  • Title:     Web Server (HTTP, HTTPS)
  • Description: Apache v2 etc…
  • Ports:     80, 443/tcp

Sjekk for at apache kjører etter installasjonen

I nettleser på PC: Gå til http://[serverens ip]

Nettleseren skal vise dette:

apache2 default page

Opprette document root 

mkdir med -p switch tillater opprettelse av parent dirs, i dette tilfelle nettstedet.dev som er parent dir til public_html. /var/www/ eksisterer fra før, mens /var/www/nettstedet.dev/public_html er nytt.

brukernavn@servernavn:~$ sudo mkdir -p /var/www/nettsstedet.dev/public_html

Sette filrettighet 751 (drwxr-xr-x)  på dirs under /var/www/ 

Setter rettighet 751 på directories i /var/www/ ved å  søke opp -type d (directories) med find og kjører chmod 751 på søkeresultatet. Gjentas evt når WordPress er installert.

brukernavn@servernavn:~$ sudo find /var/www/ -type d -exec chmod 751 {} \;

Sette apache2 som eier

Apache settes som eier og gruppe med www-data:www-data. Dette gjentas eventuelt når WordPress er installert. Apache skal default eie alle filer og mapper på nettstedet. Dette kommer vi til å endre senere.

brukernavn@servernavn:~$ sudo chown -R www-data:www-data /var/www/nettstedet.dev 

Kontroller endringen

Her gjøres en sjekk med  verktøyet tree. tree kan vise alle underliggende directories fra nivået vi står på. Her begrenses det til 2 nivåer med L 2. -dugL 2 står for:

  • d = directory only
  • u = username
  • g = group
  • L = level
  • 2 = antall nivåer vi vil se

Output fra tree -dugL 2 viser at mappen vi står i (www)  eies av root root. De to neste eies av www-data www-data, som betyr at Apache har rettighet til directories for nettstedet. Det er nødvendig for at Apache skal vises nettstedet.dev.

Info: www-data:www-data er default Apache_Run_User og Apache_Run_Group. 

brukernavn@servernavn:~$ /var/www$ tree -dugL 2
[root root ] .
├── [www-data www-data] nettstedet.dev

    |── [www-data www-data] public_html

Opprette dummy index.html for testing

Nå opprettes en enkel index-fil med nano, for testing i nettleser. Html-kode for index.html omtales ikke her, men det er nok med et minimum for å vise siden, f eks med en kort tekst.

brukernavn@servernavn:~$ sudo nano /var/www/nettstedet.dev/public_html/index.html

Lage konfig-fil for nettstedet

Her lages filen nettstedet.dev.conf med utgangspunkt i kopi av 000-default.conf. Kopiert fil redigeres.

brukernavn@servernavn:~$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/nettstedet.dev.conf

Redigere conf-filen for nettstedet i nano.

Vi redigerer innholdet i Virtual host slik at conf-filen vil konfigurere Apache korrekt for nettstedet.dev.

brukernavn@servernavn:~$ sudo nano /etc/apache2/sites-available/nettstedet.dev.conf

 GNU nano 6.2                                         nettstedet.dev.conf
<VirtualHost *:80>
# The ServerName directive … bla bla bla….

#ServerName www.example.com
ServerName www.nettstedet.dev
ServerAdmin admin@nettstedet.dev
DocumentRoot /var/www/nettstedet.dev/public_html

<Directory /var/www/nettstedet.dev/public_html>
              Options -Indexes +FollowSymLinks
              AllowOverride All
</Directory>

# Available loglevels: …bla, bla, bla…
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/nettstedet.dev-error.log
CustomLog ${APACHE_LOG_DIR}/nettstedet.dev-access.log combined

# For most configuration files …. bla bla bla …
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

Gi apache eierskap til index.html

Her får apache tilgang til index.html.

brukernavn@servernavn:~$ sudo chown www-data:www-data /var/www/nettstedet.dev/public_html/index.html

 

Aktivere nettstedet i apache

brukernavn@servernavn:~$ sudo a2ensite nettstedet.dev

Reload apache

brukernavn@servernavn:~$ sudo systemctl reload apache2

Tillate .htaccess overskriving

brukernavn@servernavn:~$ sudo a2enmod rewrite

Så reload apache2

brukernavn@servernavn:~$ sudo systemctl reload apache2

Legg inn peker til nettstedet.dev i host-filen på Windows klienten

På PC:
Kjør Notepad som Administrator
Notepad:

– Åpne filen  C:\Windows\System32\drivers\etc\hosts
– Ikke txt-fil, så i åpnedialog velg Alle filer (*.*)
– Legg inn IP til server og FQDN for nettstedet:
127.0.0.1 localhost
localhost
192.168.1.2 www.nettstedet.dev 

Lagre og lukk Notepad
Åpne cmd som Administrator
Kjør kommando: ipconfig /flushdns

Test nettsedet.dev i en nettleser. 

Nå skal nettleser vise en nettside basert på index.html, f eks «Det funker!» (Hvis denne teksten er lagt inn i index.html)