44 Praktična vprašanja o intervjuju s spletnim strežnikom Apache z odgovori

Apache je najbolj priljubljen spletni strežnik in če nameravate delati kot skrbnik za srednjo programsko opremo / sistem / spletni strežnik, ga morate poznati. Apache HTTP je odprtokodni spletni strežnik za Windows & UNIX.


Pred nekaj dnevi sem pisal o vprašanjih za InterSphere Interview in mnogi od vas so zahtevali, da napišete o spletnem strežniku Apache, tako da tukaj.

Naslednja vprašanja se pogosto postavljajo v intervjuju od začetne do strokovne ravni. Večina organizacije bo imela spletni strežnik, ki ga upravlja Middleware / System Administrator, skupaj z aplikacijskim strežnikom in drugimi komponentami.

Začnimo z vprašanja za razgovor v realnem času & odgovori

Contents

1. Kako ustaviti / zagnati spletni strežnik Apache?

Znova lahko zaženete tako, da odprete mesto primerka Apache >> mapo bin in izvajati skript apachectl.

./ apachectl stop
./ apachectl začetek

Uporabite lahko tudi skript, ki se nahaja v /etc/init.d/. V glavnem bo imenovan bodisi “apache” ali “httpd”

/etc/init.d/apache postanek
/etc/init.d/apache start

Drug postopek bi bil uporaba storitev

httpd stop
storitev httpd start

2. Kakšna sta privzeta vrata za HTTP in HTTPS?

Privzeta vrata za HTTP so 80 in HTTPS 443. Preverite privzeta vrata za druge tukaj navedene programe.

3. Ali mi lahko poveste pomembno ime konfiguracijske datoteke?

httpd.conf je glavna konfiguracijska datoteka, ki se uporablja v Apacheu.

4. Kako preveriti različico teče spletni strežnik Apache?

Obstaja več načinov, kako to najti, vendar bi bilo bolj natančno;

  • Prijava na spletni strežnik
  • Pojdite na primerek apache in mapo bin
  • Izvedeno httpd z -v, da dobite podrobnosti o različici.

[[zaščitena e-pošta] sbin] # ./httpd -v
Različica strežnika: Apache / 2.2.15 (Unix)
Izdelan strežnik: 18. julij 2016 15:24:00
[[zaščitena e-pošta] sbin] #

Lahko pa uporabite tudi vrtljajev ukaz za preverjanje nameščene različice.

[[zaščitena e-pošta] ~] # rpm -qa | grep httpd
httpd-2.2.15-54.el6.centos.x86_64
httpd-tools-2.2.15-54.el6.centos.x86_64
[[zaščitena e-pošta] ~] #

5. Kako vedeti, ali deluje spletni strežnik?

Obstaja več načinov za to.

  1. Prijavite se na spletni strežnik in pozdravite postopek “httpd”

ps -ef | grep httpd

  1. Preverite morebitno opozorilo na nadzorni nadzorni plošči.
  2. Preverite, ali je vaš brskalnik apache IP: v brskalniku dostopen

Primer: http://yourapacheserver.com

  1. Preverite, ali konfigurirani IP in vrata poslušajo na strežniku z netstatom

netstat -anlp | grep 80

6. Kako namestiti Apache HTTP?

Obstajajo trije možni načini za namestitev tega.

Uporaba izvorno kodo – lahko prenesete vir in ga sestavite.

tar xvf httpd-1.2.3.tar
gzip -d httpd-1.2.4.tar.gz

  •  Pomaknite se do mesta, kjer ste vir pridobili s pomočjo ukaza cd in ga konfigurirali z ukazom ./configure na terminalu
  • Nato ga sestavite z ukazom make.
  • Za konec uporabite ukaz make install.

Če želite izvedeti več možnosti, kako ga konfigurirati, lahko uporabite ukaz configure –help.

Skladišče YUM – če je vaš strežnik povezan z internetom ali ima notranje skladišče, ga lahko uporabite yum za njegovo namestitev.

yum namestite httpd

RPM – Lahko prenesete potreben paket RPM in uporabite ukaz rpm.

rpm -ivh ime paketa.rpm

7. Kako zagotoviti, da Apache posluša samo en naslov IP na strežniku?

To je pogosto potrebno, če imate na strežniku več IP-jev. Če želite zagotoviti, da Apache posluša samo na določenem IP-ju, morate izrecno omeniti IP in vrata v direktivi Listen.

Primer:

Poslušajte 10.10.10.10:80

8. Kako zagotoviti, da se Apache izvaja z uporabnikom, ki ni root / nikogar?

To je mogoče storiti z dodajanjem Uporabnika & Direktiva o skupini v datoteki httpd.conf

Uporabniški apache
Skupinski apache

Zgornji primer konfiguracije bo zagotovil, da se začne pri uporabniku “apache”. Pred konfiguriranjem morate zagotoviti, da uporabniki obstajajo na strežniku.

9. Kako onemogočim indeksiranje imenikov?

V ustrezni direktivi lahko uporabite “Možnosti -Indexes”.

Primer:

Možnosti -Indexes

10. Kateri modul mora imeti možnost preusmeritve?

mod_rewrite je odgovoren za preusmeritev in to mora biti v datoteki httpd.conf komentirano.

LoadModule rewrite_module module / mod_rewrite.so

11. Ali lahko poslušalna vrata spremenite iz privzetih v nekaj drugega?

Da, mogoče je tako, da v polju vnesete številko vrat Poslušaj direktiva.

Na primer: da Apache prisluhne na naslovu 9000 do 10.10.10.10 naslova IP.

Poslušajte 10.10.10.10:9000

12. Kako zavarovati spletno mesto, gostovano na spletnem strežniku Apache?

Obstaja več načinov za zaščito spletnega strežnika Apache, vključno z naslednjim.

  • Izvajanje SSL
  • Integracija z WAF (požarni zid za spletne aplikacije), kot je ModSecurity itd.
  • Uporaba oblačnega ponudnika varnosti

13. Katere so datoteke dnevnikov, ki jih ustvari Apache?

Ustvarjeni sta dve priljubljeni dnevniški datoteki;

  • access.log – vse podrobnosti o zahtevi s kodo stanja
  • error.log – zajemite vse napake znotraj apache ali povezave z nadomestnim računalnikom

14. Kako ustvariti CSR?

Uporabite lahko naslednji ukaz OpenSSL ali ustvarite CSR na spletu.

Če želite ustvariti nov CSR z zasebnim ključem

openssl req -out geekflare.csr -newkey rsa: 2048 -nodes -keyout geekflare.key

Za več ukazov si oglejte obrazec OpenSSL.

15. Kaj je virtualno gostovanje?

Navidezno gostovanje v Apacheju vam omogoča, da gostite več spletnih mest na enem primerku. Lahko ustvarite ali IP temelji ali Temelji na imenu na virtualnem gostovanju.

16. Kateri modul je potreben za povezavo z WebSphere?

Mod_was_ap22_http.so je treba dodati v datoteko httpd.conf, da se integrira z IBM WAS.

17. Kako postaviti raven dnevnika v način za odpravljanje napak?

Pogosto je potrebno, ko odpravljate težavo in želite zajeti več podrobnosti. Nivo beleženja lahko spremenite v odpravljanje napak tako, da v datoteki httpd.conf zagotovite naslednje.

Odpravljanje napak LogLevel

18. Kateri modul je potreben za omogočanje SSL-ja?

Pred uvedbo SSL-ja mora modul mod_ssl komentirati.

Naloži module auth_basic_module / mod_ssl.so

19. Kako je ime modula WebLogic?

mod_wl_22.so

20. Kakšna je raven dnevnika, ki je na voljo v Apacheu?

Privzeta konfiguracija je nastavljena na »opozoriti“Vendar je možno tudi naslednje.

  • odpravljanje napak
  • info
  • opozoriti
  • opaziti
  • kritik
  • alarm
  • nastajajo
  • napaka

21. Kaj je DocumentRoot?

Direktiva DocumentRoot je konfiguracija, v kateri lahko določite mesto mape, od koder bodo strežene statične datoteke. Imenuje se tudi kot WebRoot.

Privzeta lokacija DocumentRoot je / var / www / html

22. Kako namestiti vojno ali JAVA aplikacije v Apache?

Bojim se, da je Apache spletni strežnik in z njim uvajanje aplikacij na osnovi Jave ni mogoče. Lahko pa integrirate Java-ove aplikacijske strežnike, kot so WebLogic, WebSphere, JBoss, kjer lahko namestite vojno, ušesne datoteke.

23. Kakšna je razlika med spletnim strežnikom Apache in Apache Tomcat?

Apache Web je strežnik HTTP za strežbo statičnih vsebin, kjer je Tomcat vsebnik servlet za nameščanje datotek JSP.

Apache HTTP lahko vedno integrirate s Tomcatom, vendar glede na zahtevo, ki jo morate izbrati. Če potrebujete ustrezen spletni strežnik, potem Apache HTTP else Tomcat za JSP-Servlet Container.

24. Kako lahko Apache deluje kot proxy strežnik?

Mod_proxy modul lahko uporabite kot proxy strežnik. Mod_proxy modul se lahko uporablja za povezavo z nadomestnim strežnikom, kot so Tomcat, WebLogic, WebSphere itd..

25. Kako konfigurirati dnevnik Apache, tako da zajame čas, potreben za vročitev zahteve?

Dodate lahko »% D“V datoteki httpd.conf pod direktivo LogFormat, da zajamete odzivni čas, potreben za vročitev zahteve. Čas bo prikazan v mikrosekundah.

LogFormat "% h% l% u% t \"% r \" %>s% b \"% {Referer} i \" \"% {Uporabniški agent} i \" % D" kombinirani

Znova zaženite spletni strežnik Apache in videli boste rezultate.

182.19.197.23 – – [02 / okt / 2016: 10: 32: 25 +0000] "GET / HTTP / 1.1" 403 4961 "-" "Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit / 537.36 (KHTML, kot Gecko) Chrome / 53.0.2785.116 Safari / 537.36" 1515
182.19.197.23 – – [02 / okt / 2016: 10: 32: 25 +0000] "GET /icons/apache_pb.gif HTTP / 1.1" 304 – "http://lab.geekflare.com/" "Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit / 537.36 (KHTML, kot Gecko) Chrome / 53.0.2785.116 Safari / 537.36" 424
182.19.197.23 – – [02 / okt / 2016: 10: 32: 25 +0000] "GET /icons/poweredby.png HTTP / 1.1" 304 – "http://lab.geekflare.com/" "Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit / 537.36 (KHTML, kot Gecko) Chrome / 53.0.2785.116 Safari / 537.36" 472

26. Kakšno orodje uporabljate za analizo dnevnikov?

Govoriti moraš resnico, toda da bi ti dal idejo, lahko uporabiš GoAccess, SumoLogic ali nekaj omenjenih tukaj.

27. Kateri so spletni strežniki, s katerimi ste delali skupaj z Apacheom?

Spet bolje povejte resnico, toda če želite vedeti, na trgu obstaja veliko spletnih strežnikov, vključno z naslednjimi.

  • Nginx
  • Microsoft IIS
  • LiteSpeed
  • GWS

28. Kako preveriti datoteko httpd.conf, da zagotovimo napako v konfiguraciji sintakse?

httpd –t vam bo pomagal preveriti skladnjo.

[[zaščitena e-pošta] httpd] # / usr / sbin / httpd -t
Sintaksa v redu
[[zaščitena e-pošta] httpd] #

Lahko pa uporabite tudi ukaz apachectl.

[[zaščitena e-pošta] ~] # / usr / sbin / apachectl configtest
Sintaksa v redu
[[zaščitena e-pošta] ~] #

29. Kako opraviti referenčno uspešnost Apache?

Za izvajanje preizkusa obremenitve spletnih spletnih strežnikov, vključno z Apache, lahko uporabite orodje, kot je ApacheBench, SIEGE. Druga možnost za izvajanje stresnega testa na spletu, da si ogledate, kako uspešna je spletna aplikacija pod obremenitvijo.

30. Kako dobiti podporo za spletni strežnik Apache, če je nekaj narobe?

Apache je spletni strežnik odprtega koda, zato ni podpore na ravni podjetja. Vendar pa lahko dvignete poročilo o napaki ali pa postavite vprašanje o Stack Overflow.

31. Kako zagotoviti, da se spletni strežnik zažene po ponovnem zagonu strežnika?

Če uporabljate Linux, lahko skript vstavite v /etc/init.d/ in omogočite zagon ob zagonu z ukazom chkconfig

Recimo, da ustvarite datoteko z imenom apache in postavite pod /etc/init.d

chkconfig –add apache
chkconfig apache naprej

če je v sistemu Windows, preverite, ali je izbrana vrsta zagona »Samodejno«.

32. kakšna je razlika med spletnim strežnikom Apache in Nginx?

Oba sta razvrščena kot spletni strežnik in tukaj je nekaj glavnih razlik.

  • Nginx je spletni dogodek, na katerem temelji Apache
  • Nginx je znan po boljših zmogljivostih kot Apache
  • Apache podpira širok razpon OS, kjer Nginx ne podpira OpenVMS in IBMi
  • Apache ima veliko število modulov, ki so vključeni v strežniški aplikacijski strežnik, kjer Nginx še vedno prihaja do konca
  • Nginx je lahek in hitro zajame tržni delež. Če ste novi pri Nginxu, vas bodo morda zanimali moji članki o Nginxu.

33. Kako bi ubil Apača, če graciozni postanek ne deluje?

Če deluje v Linuxu, lahko uporabite ukaz kill.

Ugotovite PID Apache s ps -ef | grep http

Nato jo ubij

ubiti $ PIDNUMBER

če običajni kill ne deluje, poskusite kill -9

ubiti -9 $ PIDNUMBER

Če je v sistemu Windows, končajte nalogo Apache v upravitelju opravil.

34. Kako najti datoteko httpd.conf, če ne poznate lokacije namestitve?

V Linuxu lahko uporabite ukaz find.

Predpostavimo, da veste, da mora biti v datotečnem sistemu / apps, da lahko uporabite naslednji ukaz.

find / apps -name httpd.conf

Če niste prepričani o tem, kateri datotečni sistem lahko potem najdete v / datotečnem sistemu, vendar ne pozabite, da lahko traja veliko časa glede na velikost celotnega datotečnega sistema.

find / -name httpd.conf

35. Kateri različni okusi spletnega strežnika Apache poznate?

  • IBM HTTP Server – znan kot IHS in se pogosto uporablja s IBM WebSphere Application Server
  • Oracle HTTP Server – znan kot OHS, ki se pogosto uporablja s spletnim strežnikom Oracle Weblogic

36. Kje je Apache na lokaciji podatkovnega centra?

Lahko razložite glede na vaše izkušnje, vendar je običajno za internetne aplikacije to običajno v internetnem DMZ omrežju in za intranet, jedrno omrežje.

Toda to se bo spet razlikovalo glede na aplikacijo / organizacijo.

37. Kako skriti podatke o različici strežnika v glavi odgovora HTTP?

V datoteko httpd.conf dodajte naslednje in znova zaženite spletni strežnik

ServerTokens Prod
Podpis strežnika izklopljen

To bo skrilo različico in prikazalo strežnik kot »Apač“Samo.

38. Kaj pomeni 200, 403 & 503 kode napak HTTP pomenijo?

  • 200 – vsebina najdena in vročena
  • 403 – poskusil dostop do omejene datoteke / mape
  • 503 – strežnik je preveč zaseden, da bi lahko vložil zahtevo in z drugimi besedami – storitev ni na voljo.
  • Za več informacij glejte infografiko kode HTTP odzivov.

39. Kako onemogočiti sledenje zahtevkom HTTP?

V datoteko httpd.conf dodajte naslednje in znova zaženite primerek

TraceEnable off

40. Kako odpraviti težavo s konfliktom v pristanišču?

netstat bi bil koristen za odpravljanje težav s konfliktom v pristanišču. Če na enem strežniku deluje več primerkov, bi bilo priporočljivo, da je za direktivo poslušanje konfiguriran absolutni IP: Port.

41. Kako namestiti modul drugega proizvajalca?

Lahko jih uporabite Apache Toolbox. Ko ga naložite, ga ekstrahirajte s pomočjo orodja tar.

katran -xf Apachetoolbox-1.5.72.tar.gz

Pomaknite se do mape Apachetoolbox-1.5.72 z ukazom cd in zaženite spodnji ukaz, da izberete module za strežnik Apache.

./install.sh

Ponuja module, kot so mod_ip_forwarding, mod_auth_mysql in mod_auth_samba za sestavljanje s spletnim strežnikom Apache. Čeprav lahko te module vključite ročno, je z Apache Toolbox lažje.

42. Kako virtualnim gostiteljem dodeliti več imen?

Lahko uporabite direktivo ServerAlias, kot je prikazano spodaj.

ServerName example.com
ServerAlias ​​awesome.com fantastic.com

43. Kako omejiti velikost prenosa?

Imam spletno aplikacijo, ki uporabnikom omogoča nalaganje datotek, kot so besedilni dokumenti, pdf in tako naprej. Kako omejim nalaganje datotek s strani uporabnikov?

Za omejitev velikosti datoteke za nalaganje lahko uporabite direktivo LimitRequestBody.

LimitRequestBody 9000

Vrednost, dodeljena LimitRequestBody, omogoča Apacheu, da sprejme in shrani datoteke, ki jih uporabniki prenesejo v 9000 bajtov. Vrednost lahko prilagodite glede na zahtevo.

44. Kako omejiti dostop prek IP?

Morda boste želeli, da so nekateri kontekstni korenini dostopni z dovoljenimi IP-ji. To lahko storite mod_authz_core ali mod_authz_host module za omejitev dostopa z direktivo Zahtevaj.

Zahtevaj 10.0.0.2 10.0.0.4 192.168.34.23 192.168.34.23

Z zgoraj navedenim bo Apache vročil zahteve le, če bodo zahteve poslane s seznama IP.

V imeniku morate določiti direktivo Zahtevaj, kjer želite dovoliti ali onemogočiti dostop do virov.

Zaključek

Upam, da vam zgornja vprašanja in odgovor pomagajo pri pripravi na skrbnika spletnega strežnika intervju.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map