Apache 2.4

Denne guiden beskriver de mest vanlige endringer man vil få behov for å gjøre for å få sin hjemmeside kompatibel med Apache 2.4

Apache 2.4 har mange fordeler sammenlignet med sin forgjenger 2.2 . den største fordelen er prestasjonen. Apache 2.4 er mye mer effektiv enn 2.2 og kan dermed levere de fleste hjemmesider raskere enn forgjengeren.

Da støtten for Apache 2.2 vil opphøre helt i nærmeste framtid. Bør denne oppdateringen gjøres så snart som mulig.


Gjør din side kompatibel med Apache 2.4

Om du for eksempel  Benytter WordPress, Joomla eller annet publiseringsvektøy, Er det sannsynligvis ikke mye du vil ha behov for å gjøre for å få din side til å fungere med Apache 2.4.

  • Pass som alltid på at alt (wordpress, Joomla, tillegg, temaer osv) er oppdatert til seneste versjon.
  • Pass på at de tillegg/Tema du benytter fortsatt mottar oppdateringer fra utviklerne. For wordpress finner du denne informasjonen på wordpress.org eller på den hjemmesiden hvor temaet/tillegget ble kjøpt. Dersom tillegget/temaet har blitt oppdatert i løpet av de siste månedene kan den regnes som aktiv og bør være kompatibel med Apache 2.4
  • Dersom deler av din hjemmeside er spesialbygget, bør du kontakte den som har bygget denne og kontrollere at alle disse delene er kompatibel med Apache 2.4

Legg merke til at alle eventuelle oppdateringer må være gjennomført FØR du bytter til Apache 2.4 i din  kundesone. Skulle siden slutte å fungere etter at du har endret til Apache 2.4, kan du prøve å bytte till PHP-versjon 5.6 eller 7.0, eller ta kontakt med supporten vår.


Få din side til å kjøre med Apache 2.4

For å kjøre din hjemmeside på Apache 2.4 hos Loopia Logger du inn på  Loopia Kundesone og klikker på ditt domenenavn. Under rubrikken “konfigurasjon” velger du alternativet “hjemmeside hos loopia (ny plattform)” > “unix” og velger “PHP 7.1, Apache 2.4 for å kjøre siden med Apache 2.4 og PHP-versjon 7.1.


Manuell oppdatering (avansert)

Oppdateringen til Apache 2.4 berører direktivet i .htacess-filen, inklusiv funksjoner somskriver i .htacess-filen. De store endringene her berører innstillingene for autorisering, som styrer hvem som kan se en side, og hvem som skal stenges ute. Disse funksjonene benyttes ofte i brannmurer for siden,  og for eksempel bare la besøkende med spesifikke IP-adresser besøke en side. Kontroller om .htacess-filen inneholder noen av følgende direktiver.

  • Order
  • Allow
  • Deny
  • Satisfy

Dersom den ikke gjør det, kan det se ut til at du ikke benytter slike funksjoner per i dag. Da bør koden allerede fungere som den skal på Apache 2.4.

I Apache 2.4 benyttes i stedet direktivet “require” som man benytter for å beskrive kriterier som må oppfylles for at en besøkende skal kunne se siden.

Se også: https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html

Disse direktivene kan grupperes i ulike blokker som styrer hva som kreves for at de skal regnes som oppfylt.

  • RequireAll
  • Samtlige krav må være oppfylt for at besøkeren skal få tilgang til siden.
  • RequireAny
  • Kun et krav i blokken må oppfylles for å kunne gi tilgang til siden. Dersom Require-direktivet ikke grupperes, Vil de håndteres på samme måte som om de var en RequireAny blokk.
  • RequireNone
  • Ingen av Require-direktivene i blokken kan oppfylles for at den besøkende skal få tilgang til siden.

Eksempel

# Tillat kun besøkende fra nedenforstående IP adresser
Require ip 93.188.2.53
Require ip 2a02:250:0:8::53

# Ikke tillat noen å besøke siden
Require all denied

# Tillat kun autoriserte brukere.
AuthUserFile /www/absolute/path/.htpasswd
AuthType  Basic
AuthName  "Forbidden area"
Require  valid-user

# Tillat ikke POST forespørsler.
<RequireAll>
       Require all granted
       Require not method POST
</RequireAll>

# Forhindre "hotlinking" av bilder
SetEnvIf Referer "mindoman\.se" localreferer
<FilesMatch "\.(jpe?g|gif|png)$">
       Require env localreferer
</FilesMatch>

# Direktiv som kun kjøres av Apache < 2.3
<IfModule !mod_authz_core.c>
       Order Allow,Deny
       Allow from all
</IfModule>

# Direktiv som kun kjøres av Apache >= 2.3
<IfModule mod_authz_core.c>
       <RequireAll>
              Require all Granted
       </RequireAll>
</IfModule>

Endringer som berører AddOutFilterByType

Direktivet AddOutputFilterByType har fra og med Apache 2.4 blitt flyttet til module mod_filter. Dette er en modul som ikke finnes på våre webservere. Dermed må alle rader i.htacess-filen som kjører dete direktivet slettes.

Om du for øyeblikket benytter dette direktivet for å aktivere gzip, Vil du ikke ha behov for å gjøre noe annet enn å slette filene. Gzip-komprimering er automatisk aktivert på vår Apache 2.4 plattform.

Øvrige endringer og mer information

I tillegg til ovenforstående endringer er det også gjort en del mindre endringer i Apache 2.4. Majoriteten av de som behøver å oppdatere sin kode er ikke berørt av disse. En komplett beskrivelse av hva som har blitt oppdatert kan du finne her.

https://httpd.apache.org/docs/trunk/upgrading.html

Var denne artikkelen til hjelp?

Related Articles