Innledning

Apache HTTP-server er den mest brukte web-server i verden. Den tilbyr mange kraftige funksjoner, inkludert dynamisk lastbare moduler, robust media support, og omfattende integrasjon med andre populære programvare.

I denne guiden vil vi forklare hvordan du skal installere en Apache web server på din Ubuntu 20.04 server.

Forutsetninger

Før du begynner denne håndboken, bør du ha en vanlig, ikke-root-bruker med sudo-rettigheter som er konfigurert på din server., I tillegg, vil du trenger for å aktivere en grunnleggende brannmur til å blokkere ikke-essensielle porter. Du kan lære hvordan du konfigurerer en vanlig bruker-kontoen og sette opp en brannmur for din server ved å følge vår Første server setup guide for Ubuntu 20.04.

Når du har en konto som er tilgjengelig, må du logge på som ikke-root-bruker for å begynne.

Trinn 1 — Installere Apache

Apache er tilgjengelig i Ubuntu standard programvare arkiver, noe som gjør det mulig å installere det ved hjelp av konvensjonelle pakken management verktøy.,

La oss begynne med å oppdatere den lokale pakken indeksen å reflektere de nyeste oppstrøms endringer:

  • sudo apt update

sett inn apache2 pakke

  • sudo apt install apache2

Etter som bekrefter installasjon, apt vil installere Apache og alle nødvendige avhengigheter.

Trinn 2 — Justere Brannmur

Før testing Apache, er det nødvendig å endre brannmurinnstillingene for å tillate ekstern tilgang til standard web-porter., Forutsatt at du har fulgt instruksjonene i forutsetningene, bør du ha en UFW brannmur er konfigurert for å begrense tilgang til din server.

Under installasjonen, Apache registrerer seg med UFW til å gi noen program profiler som kan brukes til å aktivere eller deaktivere tilgang til Apache gjennom brannmuren.,>

vil Du motta en liste over programmet profiler:

Output
Available applications: Apache Apache Full Apache Secure OpenSSH

Som indikert av output, det er tre tilgjengelige profiler for Apache:

  • Apache: Denne profilen bare åpner port 80 (vanlig, ukryptert web-trafikk)
  • Apache-Full: Denne profilen åpnes både port 80 (vanlig, ukryptert web-trafikk) og port 443 (TLS/SSL-kryptert trafikk)
  • Apache Sikkert: Denne profilen bare åpner port 443 (TLS/SSL-kryptert trafikk)

Det er anbefalt at du aktiverer den mest restriktive profil som fortsatt vil tillate trafikk du har konfigurert., Siden vi ikke har konfigurert SSL for vår server, men i denne håndboken, vi trenger bare å tillate trafikk på port 80:

  • sudo ufw allow 'Apache'

Du kan bekrefte endringen ved å skrive:

  • sudo ufw status

output vil gi en liste over tillatte HTTP-trafikk:

Som indikert av produksjonen, profilen er aktivert for å tillate tilgang til Apache web server.

Trinn 3 — Sjekke din Web-Server

På slutten av installasjonen, Ubuntu 20.04 starter Apache. Web-serveren skal allerede være i gang.,

Sjekk med systemd init system for å sikre at tjenesten kjører, ved å skrive:

  • sudo systemctl status apache2

Som bekreftes av denne utgang, har tjenesten startet. Men er den beste måten å teste dette på er å be om en side fra Apache.

Du kan få tilgang standard Apache destinasjonssiden til å bekrefte at programvaren kjører på riktig måte gjennom din IP-adresse. Hvis du ikke kjenner-serverens IP-adresse, kan du få det med et par forskjellige måter fra kommandolinjen.,

du Prøve å skrive inn dette på din server kommandolinjen:

  • hostname -I

Du vil få tilbake et par adresser adskilt med mellomrom. Du kan prøve ut hver i din nettleser for å avgjøre om de fungerer.,

et Annet alternativ er å bruke Icanhazip verktøyet, som skal gi deg den offentlige IP-adressen som leser fra et annet sted på internett:

  • curl -4 icanhazip.com

Når du har din server IP-adresse, skriver du den inn i nettleserens adressefelt:

You should see the default Ubuntu 20.04 Apache web page:

This page indicates that Apache is working correctly. It also includes some basic information about important Apache files and directory locations.

Step 4 — Managing the Apache Process

Now that you have your web server up and running, let’s go over some basic management commands using systemctl.

To stop your web server, type:

  • sudo systemctl stop apache2

for Å starte web-serveren når det er sluttet, type:

  • sudo systemctl start apache2

for Å stoppe og starte tjenesten på nytt, skriv:

  • sudo systemctl restart apache2

Hvis du er rett og slett å gjøre konfigurasjonsendringer, Apache kan ofte laste uten å slippe tilkoblinger., For å gjøre dette, bruker du denne kommandoen:

  • sudo systemctl reload apache2

som standard, Apache er konfigurert til å starte automatisk når serveren starter. Hvis dette er ikke hva du vil, kan du deaktivere dette problemet ved å skrive:

  • sudo systemctl disable apache2

for Å aktivere tjenesten for å starte opp ved oppstart, skriver du:

  • sudo systemctl enable apache2

Apache skal nå starte automatisk når serveren boots igjen.,

Trinn 5 — Sette Opp Virtuelle Verter (Anbefales)

Når du bruker Apache web server, kan du bruke virtuelle verter (tilsvarende server blokker i Nginx) til å kapsle inn konfigurasjon detaljer og vert for mer enn ett domene fra en enkelt server. Vi vil sette opp et domene som heter ditt_domene, men du bør erstatte dette med ditt eget domenenavn. Hvis du setter opp et domene navn med DigitalOcean, kan du gå til vårt Nettverk Dokumentasjon.

Apache på Ubuntu 20.,04 har en server og blokkerer som standard aktivert som er konfigurert til å tjene dokumenter fra /var/www/html – katalogen. Mens dette fungerer godt for et enkelt område, kan det bli uhåndterlig hvis du er vert for flere nettsteder. I stedet for å endre /var/www/html, la oss lage en katalog struktur innenfor /var/www for en ditt_domene nettstedet ditt, forlater /var/www/html på plass som standard katalog for å bli servert hvis en klient forespørsel ikke samsvarer med noen andre nettsteder.,

Opprett katalogen for ditt_domene som følger:

  • sudo mkdir /var/www/your_domain

Neste, overdra eierskapet av katalogen med $USER miljø-variabelen:

  • sudo chown -R $USER:$USER /var/www/your_domain

tillatelsene for webområdet røtter skal være korrekt hvis du ikke har endret umask verdi, som setter standard fil tillatelser., For å sikre at tillatelsene er korrekte, og tillater eieren å lese, skrive og kjøre filer samtidig gir bare lese og tillatelse til å kjøre grupper og andre, kan du legge inn følgende kommando:

  • sudo chmod -R 755 /var/www/your_domain

Neste, opprette et eksempel på index.html side ved hjelp av nano eller din favoritt editor:

  • sudo nano /var/www/your_domain/index.html

Inne, legg til følgende eksempel HTML:

/var/www/ditt_domene/index.html
<html> <head> <title>Welcome to Your_domain!</title> </head> <body> <h1>Success! The your_domain virtual host is working!</h1> </body></html>

Lagre og lukk filen når du er ferdig.,

for Apache å tjene dette innholdet, er det nødvendig å opprette en virtuell vert-fil med riktig direktiver. I stedet for å endre standard konfigurasjonen ligger på /etc/apache2/sites-available/000-default.conf direkte, la oss lage en ny en på /etc/apache2/sites-available/your_domain.conf:

  • sudo nano /etc/apache2/sites-available/your_domain.conf

Lim inn i den følgende konfigurasjon blokk, som er lik standard, men oppdatert til vår nye katalog og domene navn:

/etc/apache2/sites-available/ditt_domene.,conf

legg Merke til at vi har oppdatert DocumentRoot til vår nye katalog og ServerAdmin til en e-post at ditt_domene administrator kan få tilgang til. Vi har også lagt til to direktiver: ServerName, som etablerer base domene som bør match for denne virtuelle verten definisjon, og ServerAlias, som definerer videre navn som bør kamp som om de var basen navn.

Lagre og lukk filen når du er ferdig.,

La oss aktivere fil med a2ensite verktøy:

  • sudo a2ensite your_domain.conf

Deaktiver standard nettstedet som er definert i 000-default.conf:

  • sudo a2dissite 000-default.conf

Neste, la oss teste for konfigurasjon feil:

  • sudo apache2ctl configtest

Du bør få følgende resultat:

Output
Syntax OK

Starte Apache å implementere endringer:

  • sudo systemctl restart apache2

Apache skal nå være serverer ditt domenenavn., Du kan teste dette ved å navigere til , der bør du se noe slikt som dette:

Trinn 6 – Få Kjennskap til Viktige Apache-Filer og Kataloger

Nå som du vet hvordan å håndtere Apache-tjenesten i seg selv, du bør ta noen minutter til å bli kjent med noen viktige kataloger og filer.,

Innhold

  • /var/www/html: Den faktiske innhold på nettet, som standard bare består av standard Apache siden du så tidligere, serveres ute av /var/www/html – katalogen. Dette kan endres ved å endre Apache konfigurasjonsfiler.

– Server Konfigurasjon

  • /etc/apache2: Apache konfigurasjon katalogen. Alle Apache konfigurasjonsfiler bor her.
  • /etc/apache2/apache2.conf: De viktigste Apache konfigurasjonsfilen. Dette kan endres for å gjøre endringer til Apache global konfigurasjon., Denne filen er ansvarlig for lasting mange av de andre filene i konfigurasjon-katalogen.
  • /etc/apache2/ports.conf: Denne filen angir hvilke porter som Apache vil lytte på. Som standard, Apache lytter på port 80 og i tillegg lytter på port 443 når en modul som gir SSL-funksjonene er aktivert.
  • /etc/apache2/sites-available/: katalogen der per-området virtuelle verter kan lagres. Apache vil ikke bruke konfigurasjonsfiler som finnes i denne katalogen, med mindre de er knyttet til. sites-enabled – katalogen., Vanligvis, alle server-blokk konfigurasjonen er ferdig i denne katalogen, og deretter aktivert ved å knytte seg til den andre katalogen med a2ensite – kommandoen.
  • /etc/apache2/sites-enabled/: katalogen der aktivert per-området virtuelle verter er lagret. Vanligvis, disse er laget ved å knytte seg til konfigurasjonsfiler funnet i sites-available – katalogen med a2ensite. Apache leser konfigurasjon-filer og koblinger som finnes i denne katalogen når den starter eller laster å sammenstille en komplett konfigurasjon.,
  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/: Disse katalogene har det samme forholdet som sites-available og sites-enabled kataloger, men brukes til å lagre konfigurasjonen fragmenter som ikke hører hjemme i en virtuell vert. Filer i conf-available katalogen kan være aktivert med a2enconf kommando og funksjonshemmede med a2disconf – kommandoen.
  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/: Disse katalogene inneholder tilgjengelig og aktivert moduler, henholdsvis., Filer som slutter i .load inneholder fragmenter for å laste spesifikke moduler, mens filer som slutter i .conf inneholder konfigurasjon for disse modulene. Modulene kan aktiveres og deaktiveres ved hjelp av a2enmod og a2dismod – kommandoen.

– Server Logger

  • /var/log/apache2/access.log: standard, hver forespørsel til webserveren din er registrert i denne loggfilen mindre Apache er konfigurert til å gjøre noe annet.
  • /var/log/apache2/error.log: det er standard at alle feil blir tatt opp i denne filen., LogLevel direktiv i Apache-konfigurering) angir hvor mye detalj feillogger skal inneholde.

Konklusjon

Nå som du har din web server installert, har du mange alternativer for den typen innhold du kan tjene, og teknologi du kan bruke til å lage en rikere opplevelse.

Hvis du ønsker å bygge ut en mer komplett søknad stabel, du kan lese denne artikkelen om hvordan du konfigurerer en LAMPE stabelen på Ubuntu 20.04

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *