25 Apache-haastattelukysymystä aloittelijoille ja keskitason opiskelijoille


Olemme erittäin kiitollisia kaikille lukijoillemme vastauksesta, jonka saamme uutta Linux-haastattelu -osiota varten. Ja nyt olemme aloittaneet haastattelukysymysten osiokohtaisen oppimisen ja jatkamme samalla tämän päivän artikkelilla, jossa keskitytään perus- ja keskitason Apache-haastattelukysymyksiin, jotka auttavat sinua valmistautumaan.

Tässä osiossa olemme käsitelleet mielenkiintoisia 25 Apache-työhaastattelukysymystä ja niiden vastauksia, jotta voit helposti ymmärtää Apachesta uusia asioita, joita et ehkä koskaan tiennyt.

Ennen kuin luet tämän artikkelin, suosittelemme, että et yritä muistaa vastauksia, vaan yritä aina ensin ymmärtää skenaariot käytännössä.

1. Mikä on Apache-verkkopalvelin?
2. Kuinka tarkistaa Apache ja sen versio?
[root@tecmint ~]# 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
[root@tecmint ~]# httpd -v

Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:27:11
3. Minkä käyttäjänä Apache toimii? ja pääasetustiedoston sijainti?.
4. Missä portissa Apache kuuntelee sekä http että https?
[root@tecmint ~]# netstat -antp | grep http

tcp        0      0 :::80                       :::*                        LISTEN      1076/httpd          
tcp        0      0 :::443                      :::*                        LISTEN      1076/httpd
5. Kuinka asennat Apache-palvelimen Linux-koneellesi?
[root@tecmint ~]# yum install httpd
[root@tecmint ~]# apt-get install apache2
6. Mistä löydät kaikki Apache Web Serverin määrityshakemistot?
[root@tecmint ~]# cd /etc/httpd/
[root@tecmint 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
[root@tecmint ~]# cd /etc/apache2
[root@tecmint 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. Voidaanko Apache suojata TCP-kääreillä?

8. Kuinka muuttaa oletusarvoista Apache-porttia ja kuinka Listen-direktiivi toimii Apachessa?

Oletetaan, että Linux-koneellesi on määritetty useita IP-osoitteita ja haluat Apachen vastaanottavan HTTP-pyynnöt erityisessä Ethernet-portissa tai -rajapinnassa, vaikka se voidaan tehdä Listen-komennolla.

Jos haluat muuttaa Apachen oletusporttia, avaa Apachen päämääritystiedosto httpd.conf tai apache2.conf VI-editorilla.

[root@tecmint ~]# vi /etc/httpd/conf/httpd.conf

[root@tecmint ~]# vi /etc/apache2/apache2.conf

Hae sanaa ”Listen”, kommentoi alkuperäistä riviä ja kirjoita oma ohjeesi rivin alle.

Listen 80
Listen 8080

OR

Listen 172.16.16.1:8080

Tallenna tiedosto ja käynnistä verkkopalvelin uudelleen.

[root@tecmint ~]# service httpd restart

[root@tecmint ~]# service apache2 restart
9. Voiko meillä olla kaksi Apache-verkkopalvelinta yhdessä koneessa?
10. Mitä tarkoitat Apachen DocumentRootilla?
11. Kuinka isännöidä tiedostoja eri kansioissa ja mikä on Alias-direktiivi?

Alias-direktiivin käyttäminen on osa Apachen mod_alias-moduulia. Alias-direktiivin oletussyntaksi on:

Alias /images /var/data/images/

Tässä yllä olevassa esimerkissä /images url-etuliite /var/data/images-etuliitteelle, mikä tarkoittaa, että asiakkaat tekevät kyselyn "http://www.example. com/images/sample-image.png” ja Apache poimii sample-image.png tiedoston osoitteesta /var/data/images/sample-image. png palvelimella. Se tunnetaan myös nimellä URL Mapping.

12. Mitä ymmärrät "DirectoryIndexillä"?

DirectoryIndexin oletusasetus on .html index.html index.php. Jos sinulla on eri nimet ensimmäisellä tiedostollasi, sinun on tehtävä Muutokset httpd.conf- tai apache2.conf-hakemistossa DirectoryIndex-arvoa varten näyttääksesi sen asiakasselaimellesi.

#
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
13. Kuinka poistaa hakemistoluettelo käytöstä, kun hakemistotiedosto puuttuu?

Voit lopettaa Apache-hakemistoluettelon asettamalla seuraavan säännön päämääritystiedostoon maailmanlaajuisesti tai .htaccess-tiedostossa tietylle verkkosivustolle.

<Directory /var/www/html>
   Options -Indexes
</Directory>
14. Mitä ovat Apache Web Serverin eri lokitiedostot?
15. Mitä ymmärrät virhelokeissa "yhteyden nollauksella"?
16. Mikä on Virtual Host Apachessa?

Voit vapaasti lisätä niin monta ohjetta kuin tarvitset verkkotunnuksellesi, mutta toimivan verkkosivuston kaksi vähimmäismerkintää ovat ServerName ja DocumentRoot. Yleensä määrittelemme Virtual Host -osion httpd.conf-tiedoston alareunaan Linux-koneissa.

Esimerkki VirtualHostista
<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 : Yleensä se on verkkosivuston omistajan sähköpostiosoite, johon virhe tai ilmoitus voidaan lähettää.
  2. DocumentRoot: sijainti, jossa verkkotiedostot sijaitsevat palvelimella (välttämätön).
  3. Palvelinnimi : Sen verkkotunnuksen nimi, jota haluat käyttää verkkoselaimellasi (välttämätön).
  4. ErrorLog : Se on lokitiedoston sijainti, johon kaikki verkkotunnukseen liittyvät lokit tallennetaan.
17. Mitä eroa on ja välillä?
  1. :lla asetetaan verkkopalvelimen URL-/osoitepalkkiin liittyvä elementti.
  2. viittaa tiedostojärjestelmäobjektin sijaintiin palvelimella
18. Mikä Apache Virtual Hosting on?

Lisätietoja on artikkelissa Nimi-/IP-pohjaisten virtuaalipalvelinten luominen Apachessa.

19. Mitä ymmärrät MPM:llä Apachessa?
20. Mitä eroa on Workerin ja Prefork MPM:n välillä?
  1. Perusero Workerin ja MPM:n välillä on heidän prosessissaan aliprosessi. Prefork MPM:ssä käynnistetään isäntä httpd-prosessi, ja tämä pääprosessi alkaa hallinnoida kaikkia muita aliprosesseja palvellakseen asiakkaan pyyntöjä. Sitä vastoin Worker MPM:ssä yksi httpd-prosessi on aktiivinen, ja se käyttää eri säikeitä palvelemaan asiakaspyyntöjä.
  2. Prefork MPM käyttää useita aliprosesseja, joissa kussakin on yksi säike, kun taas työntekijä-MPM käyttää useita aliprosesseja, joissa kussakin on monta säiettä.
  3. Yhteyden käsittely Prefork MPM:ssä jokainen prosessi käsittelee yhden yhteyden kerrallaan, kun taas Worker mpm:ssä jokainen säie käsittelee yhtä yhteyttä kerrallaan.
  4. Muistin jalanjäljet Prefork MPM Suuret muistijalanjäljet, joissa Workerilla on pienempi muistitila.
21. Mitä hyötyä "LimitRequestBodysta" on ja miten voit rajoittaa latauksiasi?

Esimerkki: Haluan asettaa 100 000 tavun rajoitukset kansioon /var/www/html/tecmin/lataukset. Joten sinun on lisättävä seuraava ohje Apache-määritystiedostoon.

<Directory "/var/www/html/tecmint/uploads">
LimitRequestBody 100000
</Directory>
22. Mikä on mod_perl ja mod _php?
  1. mod_perl on Apache-moduuli, joka on käännetty Apachen kanssa helpottamaan integrointia ja parantamaan Perl-skriptien suorituskykyä.
  2. mod_php-työkalua käytetään PHP-skriptien helppoon integrointiin web-palvelimessa. Se upottaa PHP-tulkin Apache-prosessiin. Se pakottaa Apache-lapsiprosessin käyttämään enemmän muistia ja toimii vain Apachen kanssa, mutta silti erittäin suosittu.
23. Mikä on Mod_evasive?

Saat lisätietoja lukemalla artikkelin, joka opastaa mod_evasive-sovelluksen asentamisessa ja määrittämisessä Apachessa.

24. Mikä on lokitason virheenkorjaus httpd.conf-tiedostossa?
25. Mitä hyötyä mod_ssl:stä on ja miten SSL toimii Apachen kanssa?
Kuinka SSL toimii Apachen kanssa

Aina kun https-pyyntö tulee, Apache seuraa näitä kolmea vaihetta:

  1. Apache luo yksityisen avaimensa ja muuntaa sen .CSR-tiedostoksi (varmenteen allekirjoituspyyntö).
  2. Sitten Apache lähettää .csr-tiedoston CA:lle (varmenteen myöntäjälle).
  3. CA ottaa .csr-tiedoston ja muuntaa sen .crt-muotoon (sertifikaatti) ja lähettää sen .crt-tiedoston takaisin Apachelle suojatakseen ja suorita https-yhteyspyyntö.

Nämä ovat vain suosituimpia 25 kysymystä, joita haastattelijat ovat esittäneet näinä päivinä. Anna lisää haastattelukysymyksiä, joita olet kohdannut äskettäisessä haastattelussasi, ja auta muita alla olevan kommenttiosion kautta.

Suosittelemme myös lukemaan aiemmat Apache-artikkelimme.

  1. 13 Apache-verkkopalvelimen suojaus- ja vahvistusvinkkejä
  2. Kahden Apache-verkkopalvelimen/verkkosivuston synkronoiminen Rsyncin avulla

Olemme myös ylpeitä voidessamme ilmoittaa, että TecMint Ask -sovelluksen Question/Answer -osion betaversio on jo julkaistu. Jos sinulla on kysyttävää Linux-aiheista. Liity meihin ja lähetä kysymyksesi osoitteessa https://linux-console.net/ask/.

Esitän tulevissa artikkeleissamme lisää haastattelukysymyksiä DNS-, Mail -palvelimista, PHP-palvelimista jne. Pysy siihen asti Geeky ja yhdistetty TecMint.comiin.