Uvod
Apache HTTP Server je web poslužitelj otvorenog koda koji je razvila Apache Software Foundation. To je softver koji povezuje vaš lokalni poslužitelj s poslužiteljima web stranica kao što su Firefox ili Google Chrome. Ova se veza koristi za slanje i primanje datoteka i podataka.
To je najpopularniji poslužitelj na svijetu. Više od 40% svih web stranica na svjetskoj mreži pokreće Apache HTTP. Razlozi njegove popularnosti su visoka prilagodljivost, izvrstan kapacitet integracije i pouzdana medijska podrška. Apache radi na arhitekturi temeljenoj na modulima. Možete mijenjati pojedinačne module kako biste dodali i uklonili različite funkcionalnosti. U ovom vodiču vodit ćemo vas kako instalirati Apache poslužitelj na Ubuntu 18.04.
Prije instalacije
Prije nego što počnete instalirati Apache, morate se pobrinuti za neke preduvjete. Za početak, provjerite jeste li već konfigurirali ne-root korisnika sa sudo privilegijama na lokalnom poslužitelju. Druga stvar koja će vam trebati je vatrozid. Morate omogućiti svoj osnovni vatrozid i blokirati nebitne portove. Prije nego što započnete instalaciju, prijavite se sa svojim ne-root korisnikom s privilegijama. Svoj poslužitelj možete jednostavno instalirati prateći naš vodič za postavljanje Ubuntu poslužitelja.
Kako instalirati Apache web poslužitelj na Ubuntu 18.04
Ako ste ispunili preduvjete, možete prijeći na samu instalaciju. Apache web poslužitelj možete instalirati i istražiti u 6 jednostavnih koraka:
Korak 1: Instalirajte Apache
Bit će vam drago znati da je Apache već dio Ubuntua. To znači da možete instalirati Apache na svoj poslužitelj pomoću uobičajenih alata za upravljanje paketima. Dostupan je kao zadani softver u repozitoriju. Prvo ćete morati ažurirati lokalni indeks paketa:
|
1 |
sudo apt update |
Ova naredba omogućuje prikaz nedavnih uzvodnih promjena u indeksu paketa. Zatim moramo unijeti naredbu za instalaciju paketa apache2:
|
1 |
sudo apt install apache2 |
Korak 2: Promijenite postavke vatrozida
Prilikom rješavanja preduvjeta, sigurno ste postavili svoj UFW vatrozid. Ako ste slijedili upute, vaš će vatrozid blokirati vaš pristup poslužitelju. Moramo omogućiti pristup zadanim web portovima poslužitelju prije pokretanja Apachea. Zbog toga se postavke vatrozida moraju promijeniti.
U trenutku instalacije, Apache se registrira kod UFW-a. Rezultat ove registracije je stvaranje nekih profila aplikacija. Nadalje, možete koristiti ove profile za omogućavanje ili onemogućavanje pristupa vatrozida Apacheu. Zatim vizualizirajte ove ufw aplikacije sljedećom naredbom:
|
1 |
sudo ufw app list |
Vidjet ćete svoj profil aplikacije na popisu poput ovog:

Gornji popis pokazuje da su stvorena tri profila aplikacija, i to Apache, Apache Full i Apache Secure. Evo nekoliko korisnih pojedinosti o svakom od ovih profila:
-
Apache:
Profil Apache može otvoriti samo port 80. Ovaj port omogućuje normalan i nešifrirani web promet.
-
Apache Full:
Profil Apache Full ima kapacitet za otvaranje i porta 80 i porta 443. Dok port 80 omogućuje normalan, nešifrirani web promet, port 443 služi za TLS/SSL šifrirani promet.
-
Apache Secure:
Na kraju, Apache Secure otvara samo port 443. Kao što je gore spomenuto, odgovoran je za propuštanje TLS ili SSL šifriranog web prometa.
Prilikom odabira između ovih profila, razmislite o prometu koji ste konfigurirali. Željet ćete osigurati prolaz željenog prometa dok se odlučujete za najrestriktivniji profil. SSL konfiguracija trenutno je izvan našeg opsega. Stoga ćemo se za sada usredotočiti na promet koji dolazi kroz port 80. To znači da u ovom scenariju omogućujemo profil aplikacije 'Apache'. To možete učiniti ovako:
|
1 |
sudo ufw allow ‘Apache’ |
Za provjeru izmjene upišite sljedeće:
|
1 |
sudo ufw status |
Ova naredba će prikazati izlaz koji sadrži HTTP promet kojem je trenutno dopušten prolaz. Vidjet ćete nešto poput ovoga:

Protok prometa pokazuje da je željeni Apache profil aktiviran. Pristup web poslužitelju je odobren kroz vatrozid.
Korak 3: Provjerite svoj web poslužitelj
Instalacija Apachea je završena i postavke vatrozida su izmijenjene. Na kraju ovog procesa, Ubuntu 18.04 će automatski pokrenuti Apache. Zatim trebate provjeriti pomoću inicijalizacijskog sustava systemd radi li usluga u bilo kojem trenutku. Ako želite saznati više o init sustavima, možete pogledati naš vodič o tome kako upravljati Systemd uslugama i jedinicama pomoću Systemctl-a. Da biste provjerili radi li usluga, upišite:
|
1 |
sudo systemctl status apache2 |
Izlaz će biti sljedeći:

U gore navedenom trebate potražiti status Active ili running (aktivno ili pokrenuto) za uslugu. To pokazuje da je usluga pokrenuta i da uspješno radi. Postoji još jedan, poželjniji način za testiranje rada usluge. Njezin status možete provjeriti traženjem stranice od Apachea. Koristeći IP adresu svog poslužitelja, možete potvrditi radi li softver na zadanoj početnoj stranici Apachea. Evo naredbe koju možete koristiti da biste saznali IP adresu svog poslužitelja ako je već ne znate:
|
1 |
hostname -I |
Ova naredba će prikazati rezultat s nekoliko IP adresa odvojenih razmacima. Testirajte svaku pojedinačno u pregledniku. Drugi način pristupa je da saznate svoju javnu IP adresu. Možete koristiti naredbu poput ove:
|
1 |
curl -4 icanhazip.com |
Ovo će vam prikazati vašu IP adresu kako se vidi s drugih lokacija na webu. Zatim, nakon što dobijete svoju IP adresu, idite u svoj web preglednik. U adresnu traku upišite i pokrenite sljedeće:
|
1 |
http://your_server_ip |
Ovo će otvoriti zadanu Ubuntu 18.04 Apache web stranicu. Izgleda ovako:

Ova stranica sadrži neke osnovne informacije o vašim datotekama i direktorijima. Budući da se otvorila nakon upisivanja adrese, to ukazuje da Apache radi ispravno.
Korak 4: Osnovno upravljanje u Apacheu
Provjera potvrđuje da Apache radi i da je vaš poslužitelj operativan. Sada ćemo istražiti neke od osnovnih naredbi koje možete koristiti na poslužitelju za upravljanje.
Zadana konfiguracija vašeg Apachea pokreće ga kad god se poslužitelj podigne. Imate mogućnost onemogućiti ovu postavku. Upišite:
|
1 |
sudo systemctl disable apache2 |
Za ponovno aktiviranje ove zadane značajke, koristite ovu naredbu:
|
1 |
sudo systemctl enable apache2 |
Zatim upišite sljedeće ako želite ručno zaustaviti poslužitelj:
|
1 |
sudo systemctl stop apache2 |
Ako ga želite ponovno pokrenuti nakon zaustavljanja, koristite naredbu:
|
1 |
sudo systemctl start apache2 |
Za zaustavljanje i pokretanje poslužitelja, ili u biti njegovo osvježavanje, upišite:
|
1 |
sudo systemctl restart apache2 |
Kada zaustavite poslužitelj, on obično gubi sve svoje veze. Ponovno pokretanje znači da ponovno pronalazi i povezuje te veze. Ako želite, također možete ponovno učitati Apache bez gubitka veze. Ovo je osobito korisno pri promjeni konfiguracije. Upišite sljedeće za ponovno učitavanje bez prekidanja veza:
|
1 |
sudo systemctl reload apache2 |
Korak 5: Postavljanje virtualnog hosta
Iako to nije obavezno, toplo se preporučuje da postavite svoje virtualne hostove. Virtualni hostovi su mali blokovi na poslužitelju koji sadrže grupe konfiguracijskih detalja. Možete ugostiti nekoliko domena na jednom virtualnom hostu sa svog poslužitelja.
Prema zadanim postavkama, ako koristite Apache na Ubuntu 18.04, postojat će jedan aktivirani blok poslužitelja koji će posluživati dokumente u direktoriju /var/www/html. Željet ćete promijeniti ovu postavku ako ugošćujete više web-mjesta umjesto samo jednog. Međutim, postoji još jedna moguća opcija koja radi još bolje. Ostavite direktorij /var/www/html netaknutim. Umjesto toga, idite na /var/www/ kako biste izgradili strukturu direktorija za web-mjesta na vašoj željenoj domeni. Ako to učinite, direktorij /var/www/html konfiguriran je kao zadani direktorij. U slučaju da se zahtjev klijenta ne podudara ni s jednim web-mjestom na vašoj domeni, poslužit će se odavde.
Nakon toga ćemo vidjeti kako možete stvoriti novu domenu i njezin povezani direktorij. Za potrebe ovog primjera koristit ćemo hipotetski naziv, your_domain. Zamijenite your_domain gdje god se nalazi u naknadnim uputama s vlastitim nazivom domene. Za početak, pogledajmo kako možete stvoriti novi direktorij za your_domain:
|
1 |
sudo mkdir /var/www/your_domain |
Sada morate dodijeliti vlasništvo nad direktorijem. U tu svrhu možete koristiti varijablu okruženja $USER:
|
1 |
sudo chown -R $USER:$USER /var/www/your_domain |
Za nastavak, vaša dopuštenja za web korijen moraju biti ispravna. Ako niste dirali vrijednost unmask u konfiguraciji, vaša bi dopuštenja trebala biti u redu. Ali ako niste sigurni, uvijek možete potvrditi s:
|
1 |
sudo chmod -R 755 /var/www/your_domain |
Zatim ćemo stvoriti stranicu index.html. Možete koristiti nano kao i mi ili bilo koji drugi uređivač, ako imate želju:
|
1 |
nano /var/www/your_domain/index.html |
Dodajte ovaj uzorak HTML-a unutar indexa, a zatim spremite i zatvorite:
|
1 2 3 4 5 6 7 8 |
<html> <head> <title>Dobrodošli na Your_domain!</title> </head> <body> <h1>Uspjeh! The your_domain virtualni poslužitelj je aktivan!</h1> </body> </html> |
Sljedeći korak je stvaranje datoteke virtualnog poslužitelja. Datoteka virtualnog poslužitelja sa svim ispravnim direktivama potrebna je kako bi Apache posluživao gore navedeni ogledni sadržaj. Zadana konfiguracijska datoteka nalazit će se na: /etc/apache2/sites-available/000-default.conf. Umjesto izmjene te datoteke, napravit ćemo novu na: /etc/apache2/sites-available/your_domain.conf.
|
1 |
sudo nano /etc/apache2/sites-available/your_domain.conf |
Slično kao i prije, dodat ćemo uzorak za konfiguraciju. Ovaj put ćemo ga, međutim, ažurirati s obzirom na naziv domene i novi direktorij koji smo upravo stvorili. Dodajte ovaj blok, a zatim spremite i zatvorite:
|
1 2 3 4 5 6 7 8 |
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName your_domain ServerAlias www.your_domain DocumentRoot /var/www/your_domain ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> |
Kao što možete vidjeti gore, također smo ažurirali našu e-poštu ServerAdmin. Ovo je adresa na koju administrator web-mjesta your_domain može stupiti u kontakt. Ne samo to, već smo također ažurirali DocumentRoot na novi direktorij i dodali dvije nove direktive. Ove direktive uključuju ServerName i ServerAlias. ServerName se koristi za postavljanje osnovne domene. Osnovna domena se mora podudarati kako bi se definirao virtualni poslužitelj. ServerAlias, s druge strane, pruža druge nazive koji bi se također trebali podudarati, slično osnovnom nazivu. Datoteku možete jednostavno omogućiti pomoću alata a2ensite:
|
1 |
sudo a2ensite your_domain.conf |
Za onemogućavanje zadane stranice navedene u 000-default.conf, koristite ovu naredbu:
|
1 |
sudo a2dissite 000-zadano.conf |
Sada kada je konfiguracija spremna, možete provjeriti ima li pogrešaka upisivanjem:
|
1 |
sudo apache2ctl configtest |
Ovo će prikazati sljedeći izlaz ako nema konfiguracijskih pogrešaka:
|
1 2 3 |
Izlaz Sintaksa OK |
Kako biste primijenili promjene, morate ponovno pokrenuti Apache poslužitelj kao što je prethodno navedeno:
|
1 |
sudo systemctl restart apache2 |
Voila! Postavili ste svoj virtualni host i postavili naziv svoje domene. Da biste provjerili poslužuje li Apache doista your_domain, idite na http://your_domain.
Korak 6: Pregledavanje datoteka i direktorija
Uspješno ste izvršili osnovnu konfiguraciju svog Apache poslužitelja. Osim toga, upoznati ste s načinom upravljanja uslugom Apache. Zatim možete odvojiti malo vremena za istraživanje nekih od najvažnijih direktorija i datoteka.
Sadržaj
- /var/www/html
O ovom smo direktoriju već govorili. Sadrži zadanu Apache stranicu. Ako želite, možete promijeniti sadržaj ove stranice. Da biste to učinili, morat ćete izmijeniti Apache konfiguracijske datoteke.
Konfiguracija poslužitelja
- /etc/apache2
Ovo je glavni Apache konfiguracijski direktorij. To znači da se ovaj direktorij sastoji od svih konfiguracijskih datoteka povezanih s Apacheom.
- /etc/apache2/apache2.conf
Kao što sugerira dodatak na kraju direktorija, ovo je glavna konfiguracijska datoteka. Ova datoteka učitava nekoliko drugih datoteka u direktoriju i može se koristiti za izmjene u Apache konfiguraciji. Ako želite unijeti bilo kakvu promjenu u konfiguraciju Apache poslužitelja, ovdje ćete izvršiti te izmjene.
- /etc/apache2/ports.conf
Kao što naziv sugerira, ova se datoteka odnosi na portove o kojima smo ranije raspravljali. Port 80 je omogućen prema zadanim postavkama, a port 443 se aktivira kada se uvedu moduli koji sadrže SSL. Ova datoteka sadrži pojedinosti o tome koji su portovi otvoreni i omogućeni.
- /etc/apache2/sites-available/
Ovdje će se nalaziti vaši virtualni hostovi. Svaka konfiguracija blokova poslužitelja koja se treba izvršiti obavlja se u ovom direktoriju. Da biste omogućili blokove poslužitelja, oni moraju biti povezani s drugim direktorijima putem a2ensite. Apache će imati pristup datotekama u ovom direktoriju samo ako su omogućene povezivanjem s direktorijem sites-enabled.
- /etc/apache2/sites-enabled/
Ovo je direktorij u kojem se nalaze omogućeni virtualni hostovi. Kao što smo spomenuli, hostovi se omogućuju kada povežete datoteke u direktoriju sites-available putem naredbe a2ensite. Datoteke u ovom direktoriju važne su kada se Apache pokreće, ponovno učitava ili prevodi konfiguraciju.
- /etc/apache2/conf-available/, /etc/apache2/conf-enabled/
Ovi direktoriji rade na sličan način kao sites-available i sites-enabled. Da biste omogućili datoteke u direktoriju conf-available, morate koristiti naredbu a2enconf. Naredba za onemogućavanje je a2disconf. Umjesto pohranjivanja virtualnih hostova po pojedinačnom web-mjestu, ovi se direktoriji sastoje od konfiguracijskih pojedinosti koje nisu relevantne za virtualni host:
- /etc/apache2/mods-available/, /etc/apache2/mods-enabled/
Ovi direktoriji također imaju odnos sličan gornja dva primjera. Sadrže module, one dostupne i one omogućene naredbom a2enmod. Za onemogućavanje modula možete koristiti naredbu a2dismod. Datoteke s nastavkom .load sadrže fragmente koji mogu učitati određeni modul. Datoteke s nastavkom .conf sadrže relevantne konfiguracijske pojedinosti za određeni modul.
Zapisi poslužitelja
- /var/log/apache2/access.log
Ova datoteka zapisa sadrži sve zahtjeve upućene vašem poslužitelju. To se događa prema zadanim postavkama. Imate mogućnost konfigurirati Apache da bilježi zahtjeve na drugačiji način.
- /var/log/apache2/error.log
Ovo je zapisnik pogrešaka. Sve pogreške koje napravite prema zadanim postavkama idu izravno u ovu datoteku. Detaljnost bilježenja pogrešaka možete vidjeti putem direktive LogLevel.
Zaključak
Naposljetku, prateći gore navedene korake, možete jednostavno instalirati Apache web poslužitelj na svoj Ubuntu 18.04. Nakon što imate poslužitelj na svom sustavu, možete istražiti razne opcije koje imate na platformi. Možete koristiti različite tehnologije za izradu raznih vrsta sadržaja. Na taj način možete stvoriti jedinstveno i olakšavajuće iskustvo za sebe na poslužitelju.
Također možete naučiti kako osigurati svoj Apache poslužitelj pomoću Let’s Encrypt prateći naš vodič korak-po-korak. Ako želite naučiti kako instalirati Apache na CentOS 7, pratite naš vodič o tome kako instalirati Linux, Apache, MySQL, PHP (LAMP) stog na CentOS 7.
Sretno s radom!
Komentari
Još nema komentara. Budite prvi.