Jinsi ya kufunga Apache Web Server kwenye Ubuntu 20.04


Mwongozo huu utakupeleka kupitia usakinishaji wa seva ya wavuti ya Apache kwenye Ubuntu 20.04. Inajumuisha kudhibiti huduma za Apache2, fungua mlango wa seva ya wavuti kwenye ngome, kujaribu usakinishaji wa Apache2, na kusanidi mazingira ya Seva ya Mtandao.

Soma Kuhusiana: Jinsi ya Kufunga Seva ya Wavuti ya Nginx kwenye Ubuntu 20.04

  • Jinsi ya Kusakinisha Seva ya Ubuntu 20.04

Kufunga Apache2 katika Ubuntu 20.04

1. Kwanza, ingia katika mfumo wako wa Ubuntu 20.04 na usasishe vifurushi vya mfumo wako kwa kutumia amri ifuatayo inayofaa.

$ sudo apt update

2. Mara tu mchakato wa kusasisha ukamilika, sakinisha programu ya seva ya wavuti ya Apache2 kama ifuatavyo.

$ sudo apt install apache2

3. Wakati wa kusakinisha kifurushi cha Apache2, kisakinishi huchochea mfumo kuanza kiotomatiki na kuwezesha huduma ya apache2. Unaweza kuthibitisha kuwa huduma ya apache2 ni amilifu/inaendesha na imewezeshwa kuanza kiotomatiki kwenye uanzishaji wa mfumo kwa kutumia amri zifuatazo za systemctl.

$ sudo systemctl is-active apache2
$ sudo systemctl is-enabled apache2
$ sudo systemctl status apache2

Kusimamia Apache katika Ubuntu 20.04

4. Sasa kwa kuwa seva yako ya wavuti ya apache inafanya kazi, ni wakati wa kujifunza amri za kimsingi za usimamizi ili kudhibiti mchakato wa apache kwa kutumia amri zifuatazo za systemctl.

$ sudo systemctl stop apache2      #stop apache2
$ sudo systemctl start apache2     #start apache2
$ sudo systemctl restart apache2   #restart apache2
$ sudo systemctl reload apache2    #reload apache2
$ sudo systemctl disable apache2   #disable apache2
$ sudo systemctl enable apache2    #enable apache2

Kusanidi Apache katika Ubuntu 20.04

5. Faili zote za usanidi za Apache2 zimehifadhiwa kwenye saraka ya /etc/apache2, unaweza kutazama faili zote na saraka ndogo chini yake kwa amri ifuatayo ya ls.

$ ls /etc/apache2/*

6. Zifuatazo ni faili muhimu za usanidi na saraka ndogo ambazo unapaswa kuzingatia:

  • /etc/apache2/apache2.conf - Faili kuu ya usanidi ya Apache, inayojumuisha faili zingine zote za usanidi.
  • /etc/apache2/conf-available - huhifadhi usanidi unaopatikana.
  • /etc/apache2/conf-enabled - ina usanidi uliowezeshwa.
  • /etc/apache2/mods-available - ina moduli zinazopatikana.
  • /etc/apache2/mods-enabled - ina moduli zilizowashwa.
  • /etc/apache2/sites-available - ina faili ya usanidi kwa tovuti zinazopatikana (wapangishi pepe).
  • /etc/apache2/sites-enabled - ina faili ya usanidi kwa tovuti zilizowezeshwa (wapangishi pepe).

Kumbuka kwamba ikiwa FQDN ya seva haijawekwa duniani kote, utapata onyo lifuatalo kila unapoangalia hali ya huduma ya apache2 au kufanya jaribio la usanidi.

apachectl[2996]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.2.15.

Weka maagizo ya ServerName kimataifa katika faili kuu ya usanidi wa apache ili kukandamiza ujumbe huu.

7. Kuweka FQDN ya seva ya wavuti, tumia maagizo ya ServerName katika faili ya /etc/apache2/apache2.conf, ifungue ili kuhaririwa kwa kutumia kihariri chako cha maandishi unachokipenda.

$ sudo vim /etc/apache2/apache2.conf 

Ongeza laini ifuatayo kwenye faili (ukibadilisha webserver1.linux-console.net na FQDN yako).

ServerName webserver1.linux-console.net

8. Baada ya kuongeza jina la seva katika usanidi wa apache, angalia syntax ya usanidi kwa usahihi, na uanze upya huduma.

$ sudo apache2ctl configtest
$ sudo systemctl restart apache2

9. Sasa unapoangalia hali ya huduma ya apache2, onyo haipaswi kuonekana.

$ sudo systemctl status apache2

Kufungua Bandari za Apache katika UFW Firewall

10. Ikiwa umewasha ngome ya UFW na inayofanya kazi kwenye mfumo wako, unahitaji kufungua huduma za HTTP (port 80) na HTTPS (port 443) katika usanidi wa ngome, ili kuruhusu trafiki ya wavuti kwa seva ya wavuti ya Apache2 kupitia ngome.

$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw reload
OR
$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp
$ sudo ufw reload

Kujaribu Apache kwenye Ubuntu 20.04

11. Ili kujaribu kama usakinishaji wa seva ya wavuti ya Apache2 unafanya kazi vizuri, fungua kivinjari, na utumie anwani ya IP ya seva yako kusogeza:

http://SERVER_IP

Ili kujua anwani ya IP ya umma ya seva yako, tumia amri zozote zifuatazo za curl.

$ curl ifconfig.co
OR
$ curl ifconfig.me
OR
$ curl icanhazip.com

Ukiona ukurasa wa wavuti wa kukaribisha chaguo-msingi wa Apache Ubuntu, inamaanisha kuwa usakinishaji wako wa seva ya wavuti unafanya kazi vizuri.

Kuanzisha Majeshi Virtual katika Ubuntu 20.04

Ingawa seva ya wavuti ya Apache2 imesanidiwa kwa chaguo-msingi kupangisha tovuti moja, unaweza kuitumia kupangisha tovuti/programu nyingi za tovuti kwa kutumia dhana ya \Virtual Host.

Kwa hiyo Virtual Host ni neno linalorejelea desturi ya kutumia zaidi ya tovuti/programu moja ya tovuti (kama vile example.com na example1.com) kwenye seva moja.

Zaidi ya hayo, Wapangishi Mtandaoni wanaweza kuwa kulingana na jina (ikimaanisha kuwa una kikoa/majina ya wapangishi mengi yanayotumia anwani moja ya IP), au IP-msingi (ikimaanisha kuwa una anwani tofauti ya IP kwa kila tovuti).

Kumbuka kwamba seva pangishi chaguomsingi ambayo hutumikia ukurasa wa wavuti wa kukaribisha wa Apache Ubuntu chaguomsingi ambao hutumika kujaribu usakinishaji wa Apache2 unapatikana katika saraka ya /var/www/html.

$ ls /var/www/html/

12. Kwa mwongozo huu, tutaunda seva pangishi pepe ya tovuti inayoitwa linuxdesktop.info. Kwa hivyo, hebu kwanza tuunde mzizi wa hati ya wavuti kwa tovuti ambayo itahifadhi faili za wavuti.

$ sudo mkdir -p /var/www/html/linuxdesktop.info

13. Kisha, weka umiliki sahihi na ruhusa kwenye saraka iliyoundwa.

$ sudo chown www-data:www-data -R /var/www/html/linuxdesktop.info
$ sudo chmod 775 -R /var/www/html/linuxdesktop.info

14. Sasa unda sampuli ya ukurasa wa faharasa kwa madhumuni ya majaribio.

$ sudo vim /var/www/html/linuxdesktop.info/index.html

Nakili na ubandike msimbo ufuatao wa html ndani yake.

<html>
  <head>
    <title>Welcome to linuxdesktop.info!</title>
  </head>
  <body>
    <h1>Congrats! The new linuxdesktop.info virtual host is working fine.</h1>
  </body>
</html>

Hifadhi faili na uiondoe.

15. Kisha, unahitaji kuunda faili pepe ya usanidi ya seva pangishi (ambayo inapaswa kuishia na .conf kiendelezi) kwa tovuti mpya chini ya saraka /etc/apache2/sites-available.

$ sudo vim /etc/apache2/sites-available/linuxdesktop.info.conf

Kisha nakili na ubandike usanidi ufuatao kwenye faili (kumbuka kubadilisha www.linuxdesktop.info na FQDN yako).

<VirtualHost *:80>
    	ServerName www.linuxdesktop.info
	ServerAlias linuxdesktop.info
	DocumentRoot /var/www/html/linuxdesktop.info
	ErrorLog /var/log/apache2/linuxdesktop.info_error.log
	CustomLog  /var/log/apache2/linuxdesktop.info_access.log combined
</VirtualHost>

Hifadhi faili na uiondoe.

16. Kisha, wezesha tovuti mpya na upakie upya usanidi wa Apache2 ili kutumia mabadiliko mapya kama ifuatavyo.

$ sudo a2ensite linuxdesktop.info.conf
$ sudo systemctl reload apache2

17. Hatimaye, jaribu ikiwa usanidi mpya wa seva pangishi unafanya kazi vizuri. Katika kivinjari, tumia FQDN yako kusogeza.

http://domain-name

Ikiwa unaweza kuona ukurasa wa faharasa wa tovuti yako mpya, ina maana kwamba seva pangishi pepe inafanya kazi vizuri.

Ni hayo tu! Katika mwongozo huu, tumeonyesha jinsi ya kusakinisha Apache webserver kwenye Ubuntu 20.04. Pia tulishughulikia jinsi ya kudhibiti huduma za Apache2, kufungua huduma/milango ya HTTP na HTTPS katika ngome ya UFW, tukajaribu usakinishaji wa Apache2, na kusanidi na kujaribu mazingira ya Seva Pepe. Je, una maswali yoyote, tumia fomu ya maoni hapa chini ili kuwasiliana nasi.