jeg har hatt mine egne nettsteder for mange år nå. Siden bytte fra OS/2 til Linux mer enn 20 år siden, har jeg brukt Apache som min server-programvare. Apache er solid, godt kjent, og ganske lett å konfigurere etter en enkel installasjon. Det er egentlig ikke så mye mer vanskelig å konfigurere maskinen for et mer komplisert oppsett, for eksempel flere nettsteder.
Installering og konfigurering av Apache web server, må være utført som root. Konfigurere brannmuren må også være utført som root., Ved hjelp av en nettleser til å vise resultatene av dette arbeidet bør gjøres som en ikke-root-brukeren. (Jeg brukerstudent
på min virtuelle verten.)
Installasjon
Merk: Denne artikkelen har blitt oppdatert med Fedora 33 med Apache 2.4.46. Hvis du bruker en annen fordeling eller en annen utgivelse av Fedora, kommandoer og steder og innhold av konfigurasjonsfiler kan være forskjellige. Men, konfigurasjon linjer du trenger å endre er den samme uavhengig av fordeling.
Apache web server er enkel å installere., Med en kommando, kan du installere det og alle nødvendige avhengigheter:
$ dnf install httpd
Alle konfigurasjonsfiler for Apache ligger i /etc/httpd/conf
og /etc/httpd/conf.d
. Data for webområder som du vil kjøre med Apache ligger i /var/www
som standard, men du kan endre det hvis du vil.
Konfigurering
Den primære Apache konfigurasjonsfilen er /etc/httpd/conf/httpd.conf
. Den inneholder mye av konfigurasjon uttalelser som ikke trenger å bli endret etter en enkel installasjon., Faktisk, bare noen endringer må gjøres i denne filen for å få en grunnleggende nettside oppe og går. Filen blir veldig stor så snarere enn rot denne artikkelen med en masse unødvendige ting, jeg vil vise bare de direktiver som dere trenger å forandre.
Først, ta en bit av gangen og bla gjennom httpd.conf
fil for å gjøre deg kjent med det. En av de tingene jeg liker med Rød Lue versjoner av de fleste konfigurasjonsfiler er antallet kommentarer som beskriver de ulike delene og konfigurasjon direktivene i filer., httpd.conf
filen er intet unntak, da det er ganske godt kommentert. Bruk disse kommentarene for å forstå hva filen er konfigurere.
Det første elementet til å endre er Listen
uttalelse, som definerer IP-adressen og porten som Apache, er å lytte til side forespørsler. Akkurat nå, du trenger bare å gjøre dette webområdet tilgjengelig for den lokale maskinen, så bruk localhost
adresse., Linje bør se ut som dette når du er ferdig:
Listen 127.0.0.1:80
Med dette direktiv satt til IP-adressen til localhost
, Apache vil høre bare for tilkoblinger fra den lokale verten. Hvis du vil at web-serveren skal lytte for tilkoblinger fra eksterne verter, vil du bruke verten sin eksterne IP-adresse.
DocumentRoot
direktivet angir plasseringen av HTML-filer som gjør opp sidene på nettstedet. At linjen ikke trenger å endres fordi det allerede poeng til standard plassering., Linje bør se ut som dette:
DocumentRoot "/var/www/html"
Apache-installasjon RPM skaper /var/www
katalogen treet. Dersom du ønsker å endre plasseringen der hvor nettstedet filene er lagret, denne konfigurasjonen elementet brukes til å gjøre det. For eksempel, du kanskje vil bruke et annet navn for den www
undermappe for å gjøre identifisering av nettstedet mer eksplisitt. Det kan se ut som dette:
DocumentRoot "/var/mywebsite/html"
Dette er bare Apache-konfigurasjon endringer som er nødvendig for å lage en enkel nettside., For denne lille øvelsen, bare én endring ble gjort til httpd.conf
fil Listen
direktiv. Alt annet er allerede konfigurert til å produsere en fungerende web-server.
En annen endring er nødvendig, men: åpne port 80 i vår brannmur. Jeg bruker iptables som min brannmur, så jeg endre /etc/sysconfig/iptables
for å legge til en uttalelse som tillater HTTP-protokollen. Hele filen ser ut som dette:
Den linjen jeg har lagt til, er den tredje fra bunnen, som gjør at innkommende trafikk på port 80. Nå har jeg laste endret iptables-konfigurasjon.,
# cd /etc/sysconfig/ ; iptables-restore iptables
Opprette indeksen.html-fil
index.html
fil er standard fil på et web-server vil tjene opp når du får tilgang til nettstedet som bruker bare domenenavnet, og ikke en bestemt HTML-fil. I /var/www/html
– katalogen, kan du opprette en fil med navnet index.html
. Legg til innhold Hello World
. Du trenger ikke å legge til noen HTML-koder for å gjøre dette arbeidet. Den eneste jobben på web server-er for å tjene opp en stream av tekst, data, og serveren har ingen anelse om hva den dato som er eller hvordan å gjengi det., Det bare overfører data stream til den anmodende vert.
Etter at du har lagret filen, angi eierskap til apache.apache
.
# chown apache.apache index.html
Starte Apache
Apache er svært enkel å starte. Gjeldende versjoner av Fedora bruk systemd
. Kjør følgende kommandoer for å starte den og da for å sjekke status på serveren:
kommandoene kan være annerledes på din server., På Linux-systemer som bruker SystemV start skript, kommandoene vil være:
Hvis du har en nettleser som Firefox eller Chrome på din vert, kan du bruke URL localhost
på URL-en linje av web-leseren til å vise web-siden, så enkelt er det. Du kan også bruke en tekst-modus nettleser som Lynx, til å vise web-siden. Først installere Gaupe (hvis det ikke allerede er installert).
# dnf -y install lynx
bruk Deretter følgende kommando for å vise web-siden.
# lynx localhost
resultatet ser ut som dette i min terminal-økten., Jeg har slettet en masse av tomt område på siden.
Neste, redigere index.html
fil og legge til en bit av HTML-koder, slik at det ser ut som dette:
<h1>Hello World</h1>
Nå oppdatere nettleseren din. For Gaupe, bruke tastekombinasjonen Ctrl+R. resultatene ser bare litt annerledes. Teksten er i farger, som er hvordan Lynx viser overskrifter om din terminal støtter farge, og det er nå sentrert. I en GUI nettleser teksten ville være i en stor skrift.
Avskjed tanker
Som du kan se fra denne lille øvelsen, det er enkelt å installere en Apache web server., Detaljene vil variere avhengig av din distribusjon og hvilken versjon av Apache som følger av at distribusjon. I mitt miljø, dette var en ganske triviell oppgave.
Men det er mer fordi Apache er svært fleksibel og kraftig. Neste måned vil jeg diskutere hosting flere nettsteder ved hjelp av en enkelt forekomst av Apache.
Denne artikkelen ble opprinnelig publisert i 2018, og har blitt oppdatert av redaktøren.