Maswali 25 ya Mahojiano ya Apache kwa Wanaoanza na Waanzilishi


Tunawashukuru sana wasomaji wetu Wote kwa majibu tunayopata kwa sehemu yetu mpya ya Mahojiano ya Linux. Na sasa tumeanza sehemu ya kujifunza kwa busara kwa maswali ya Mahojiano na kuendelea na nakala hiyo hiyo ya leo inaangazia Maswali ya Usaili ya Msingi hadi ya Kati ya Apache ambayo yatakusaidia kujiandaa.

Katika sehemu hii, tumeshughulikia Maswali 25 ya Mahojiano ya Ajira ya Apache pamoja na majibu yake ili uweze kuelewa kwa urahisi baadhi ya mambo mapya kuhusu Apache ambayo huenda hujawahi kujua hapo awali.

Kabla ya kusoma makala hii, Tunakupendekeza sana usijaribu kukariri majibu, daima kwanza jaribu kuelewa matukio kwa misingi ya vitendo.

 rpm -qa | grep httpd

httpd-devel-2.2.15-29.el6.centos.i686
httpd-2.2.15-29.el6.centos.i686
httpd-tools-2.2.15-29.el6.centos.i686
 httpd -v

Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:27:11
 netstat -antp | grep http

tcp        0      0 :::80                       :::*                        LISTEN      1076/httpd          
tcp        0      0 :::443                      :::*                        LISTEN      1076/httpd
 yum install httpd
 apt-get install apache2
 cd /etc/httpd/
 ls -l
total 8
drwxr-xr-x. 2 root root 4096 Dec 24 21:44 conf
drwxr-xr-x. 2 root root 4096 Dec 25 02:09 conf.d
lrwxrwxrwx  1 root root   19 Oct 13 19:06 logs -> ../../var/log/httpd
lrwxrwxrwx  1 root root   27 Oct 13 19:06 modules -> ../../usr/lib/httpd/modules
lrwxrwxrwx  1 root root   19 Oct 13 19:06 run -> ../../var/run/httpd
 cd /etc/apache2
 ls -l
total 84
-rw-r--r-- 1 root root  7113 Jul 24 16:15 apache2.conf
drwxr-xr-x 2 root root  4096 Dec 16 11:48 conf-available
drwxr-xr-x 2 root root  4096 Dec 16 11:45 conf.d
drwxr-xr-x 2 root root  4096 Dec 16 11:48 conf-enabled
-rw-r--r-- 1 root root  1782 Jul 21 02:14 envvars
-rw-r--r-- 1 root root 31063 Jul 21 02:14 magic
drwxr-xr-x 2 root root 12288 Dec 16 11:48 mods-available
drwxr-xr-x 2 root root  4096 Dec 16 11:48 mods-enabled
-rw-r--r-- 1 root root   315 Jul 21 02:14 ports.conf
drwxr-xr-x 2 root root  4096 Dec 16 11:48 sites-available
drwxr-xr-x 2 root root  4096 Dec  6 00:04 sites-enabled

7. Je, Apache inaweza kulindwa kwa vifungashio vya TCP?

Tuseme una IP nyingi zilizokabidhiwa kwa mashine yako ya Linux na unataka Apache ipokee maombi ya HTTP kwenye mlango maalum wa Ethaneti au Kiolesura, hata hilo linaweza kufanywa kwa maelekezo ya Sikiliza.

Ili kubadilisha lango chaguo-msingi la Apache, tafadhali fungua faili yako kuu ya usanidi ya Apache httpd.conf au apache2.conf na kihariri cha VI.

 vi /etc/httpd/conf/httpd.conf

 vi /etc/apache2/apache2.conf

Tafuta neno Sikiliza, toa maoni kwa mstari wa asili na uandike maagizo yako mwenyewe chini ya mstari huo.

# Listen 80
Listen 8080

OR

Listen 172.16.16.1:8080

Hifadhi faili na uanze tena seva ya wavuti.

 service httpd restart

 service apache2 restart

Kutumia maagizo ya Lakabu, Ni sehemu ya mod_alias moduli ya Apache. Syntax chaguo-msingi ya maagizo ya Alias ni:

Alias /images /var/data/images/

Hapa katika mfano hapo juu, kiambishi awali cha url cha /var/data/images ambacho kinamaanisha wateja watauliza http://www.example.com/images/sample-image.png na Apache itachukua\faili ya sample-image.png kutoka /var/data/images/sample-image.png kwenye seva. Inajulikana pia kama URL Mapping.

Mpangilio chaguo-msingi wa DirectoryIndex ni .html index.html index.php, ikiwa una majina tofauti ya faili yako ya kwanza, unahitaji kufanya mabadiliko katika httpd.conf au apache2.conf kwa thamani ya DirectoryIndex ili kuonyesha hiyo kwa kivinjari chako cha mteja.

#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents.  The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
DirectoryIndex index.html index.html.var index.cgi .exe

Ili kusimamisha uorodheshaji wa saraka ya Apache, unaweza kuweka sheria ifuatayo katika faili kuu ya usanidi ulimwenguni au katika faili ya .htaccess ya tovuti fulani.

<Directory /var/www/html>
   Options -Indexes
</Directory>

Una uhuru wa kuongeza maagizo mengi unayohitaji kwa kikoa chako, lakini maingizo mawili madogo ya tovuti inayofanya kazi ni ServerName na DocumentRoot. Kwa kawaida sisi hufafanua sehemu yetu ya Seva Vipeperushi chini ya httpd.conf faili katika mashine za Linux.

<VirtualHost *:80>
   ServerAdmin [email 
   DocumentRoot /www/docs/dummy-host.example.com
   ServerName dummy-host.example.com
   ErrorLog logs/dummy-host.example.com-error_log
   CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

  1. ServerAdmin : Kwa kawaida huwa ni barua pepe ya mmiliki wa tovuti, ambapo hitilafu au arifa inaweza kutumwa.
  2. DocumentRoot : eneo ambapo faili za wavuti ziko kwenye seva(Ni lazima).
  3. ServerName : Ni jina la kikoa ambalo ungependa kufikia kutoka kwa kivinjari chako cha wavuti(Lazima).
  4. Kumbukumbu ya hitilafu : Ni eneo la faili ya kumbukumbu ambapo kumbukumbu zote zinazohusiana na kikoa zinarekodiwa.

  1. inatumika kuweka kipengele kinachohusiana na URL/upau wa anwani wa seva ya wavuti.
  2. inarejelea kuwa eneo la kitu cha mfumo wa faili kwenye seva

Kwa habari zaidi, soma juu ya Jinsi ya Kuunda Majina/IP kulingana na Majeshi Virtual katika Apache.

  1. Tofauti ya kimsingi kati ya Mfanyakazi na MPM iko katika mchakato wao wa kuzaa mchakato wa mtoto. Katika Prefork MPM, mchakato mkuu wa httpd umeanza na mchakato huu mkuu huanza kudhibiti michakato mingine yote ya watoto ili kuhudumia maombi ya mteja. Ingawa, Katika MPM mfanyakazi mchakato mmoja wa httpd unafanya kazi, na hutumia nyuzi tofauti kuhudumia maombi ya mteja.
  2. Prefork MPM hutumia michakato mingi ya watoto yenye nyuzi moja kila moja, ambapo MPM mfanyakazi hutumia michakato mingi ya watoto yenye nyuzi nyingi kila moja.
  3. Ushughulikiaji wa muunganisho katika Prefork MPM, kila mchakato hushughulikia muunganisho mmoja kwa wakati mmoja, ilhali katika Mfanyakazi mpm kila uzi hushughulikia muunganisho mmoja kwa wakati mmoja.
  4. Alama za kumbukumbu Prefork MPM Alama za kumbukumbu kubwa, ambapo Mfanyakazi ana alama ndogo za kumbukumbu.

Kwa mfano: Ninataka kuweka mipaka ya Byte 100000 kwenye folda /var/www/html/tecmin/uploads. Kwa hivyo, unahitaji kuongeza maagizo yafuatayo katika faili ya usanidi ya Apache.

<Directory "/var/www/html/tecmint/uploads">
LimitRequestBody 100000
</Directory>

  1. mod_perl ni sehemu ya Apache ambayo imeundwa na Apache kwa ujumuishaji rahisi na kuongeza utendakazi wa hati za Perl.
  2. mod_php inatumika kwa ujumuishaji rahisi wa hati za PHP na seva ya wavuti, hupachika mkalimani wa PHP ndani ya mchakato wa Apache. Hulazimisha mchakato wa mtoto wa Apache kutumia kumbukumbu zaidi na hufanya kazi na Apache pekee lakini bado ni maarufu sana.

Kwa habari zaidi, soma makala ambayo inakuongoza jinsi ya kusakinisha na kusanidi mod_evasive katika Apache.

Wakati wowote ombi la https linapokuja, hatua hizi tatu Apache hufuata:

  1. Apache hutengeneza ufunguo wake wa faragha na kubadilisha ufunguo huo wa faragha kuwa faili ya .CSR (Ombi la kutia sahihi cheti).
  2. Kisha Apache inatuma faili ya .csr kwa CA (Mamlaka ya Cheti).
  3. CA itachukua faili ya .csr na kuibadilisha kuwa .crt (cheti) na itatuma faili hiyo ya .crt kwa Apache ili kulinda na kukamilisha ombi la muunganisho la https.

Haya ni maswali 25 maarufu tu yanayoulizwa siku hizi na Wahojaji, tafadhali toa maswali zaidi ya mahojiano ambayo umekumbana nayo katika mahojiano yako ya hivi majuzi na uwasaidie wengine kupitia sehemu yetu ya Maoni hapa chini.

Tunapendekeza pia usome nakala zetu zilizopita kwenye Apache.

  1. Vidokezo 13 vya Usalama na Ugumu wa Seva ya Apache ya Wavuti
  2. Jinsi ya Kusawazisha Seva/Tovuti Mbili za Apache Kwa Kutumia Rsync

Pia, tunajivunia kutangaza kwamba toleo letu la Beta la sehemu ya Swali/Majibu la TecMint Ask Tayari limezinduliwa. Ikiwa una maswali juu ya mada yoyote ya Linux. Tafadhali jiunge nasi na uchapishe maswali/maswali yako kwenye https://linux-console.net/ask/.

Nitakuja na swali zaidi la Mahojiano kwenye DNS, seva za Barua, PHP n.k katika makala zetu zijazo, hadi hapo endelea kuwa Geeky na uunganishwe kwenye TecMint.com.