Ano ang Apache? Libreng web server Apache HTTP Server

Talaan ng mga Nilalaman:

Ano ang Apache? Libreng web server Apache HTTP Server
Ano ang Apache? Libreng web server Apache HTTP Server
Anonim

Ang Apache ay isang malakas na server na ang pangalan ay nagmula sa isang English na parirala na nauugnay sa pangalan ng Apache tribe ng North American Indians. Sa mga gumagamit ng Ruso, mayroon itong karaniwang pangalan na "Apache". Ito ay open source software na may lisensya ng GPL. Ang isa sa pinakamalaking bentahe nito ay ang cross-platform server nito, ibig sabihin, maaari itong tumakbo sa iba't ibang operating system habang pinapanatili ang mahusay na performance.

Simula noong 1996, ito ang pinakasikat na server sa mundo dahil sa katatagan at seguridad nito. Ang Apache ay binuo ng isang komunidad ng mga user-developer, na pinamumunuan ng Apache Software Foundation.

History of Apache

Kasaysayan ng Apache
Kasaysayan ng Apache

Noong Marso 1989, si Tim Berners Lee, isang English scientist na nagtatrabaho sa CERN (Switzerland), ay nagmungkahi ng isang bagong paraan upang pamahalaan ang malaking halaga ng impormasyon sa mga proyekto ng CERN. Sa oras na iyon walang nakakaalam kung ano ang Apache. Ang unang pag-unlad ng naka-hyperlink na network ng dokumento, gaya ng tawag ni Ted Nelson sa kanila noong 1965, ay humantong sa paglikha ng WWW.- ang unang software na inilabas noong Nobyembre 1990 sa ilalim ng pangalang World Wide Web, na may web browser, graphical interface at WYSIWYG editor. Pagkalipas ng dalawang taon, humigit-kumulang tatlumpung entry lang ang nasa listahan ng mga server ng WWW, kasama ang mga HTTP na NCSA.

Ang totoong kuwento ng Apache ay nagsisimula noong Marso 1995 sa paglabas ng Apache 0.2 batay sa NCSA HTTPD 1.3 server. Maraming mga gumagamit ang interesadong malaman kung ano ang Apache ngayon at kung ano ang naging programa sa mga unang buwan ng pagkakaroon nito. Isa lamang itong hanay ng mga pag-edit na inilapat sa NCSA server. Susunod, inilabas ni Robert Thau ang Shambhala 0.1 na may mga API para sa mga module na napatunayang napakatagumpay.

Ang pinakamalaking milestone ng proyekto ay ganap na pagsunod sa pamantayan ng HTTP 1.1, na isinama noong Abril 1997 bilang bersyon 1.2. Kasama na sa bersyong ito ang Windows NT platform, na inilunsad noong Hulyo 1997. Ang pagsasama-sama ng mga configuration file ay ipinatupad sa release 1.3.3.

Apache Group ang responsable para sa ebolusyon ng web server at mga partikular na desisyon sa pag-develop. Ang pangkat na ito ay dapat na nakikilala mula sa mga pangunahing developer - Pangunahing pangkat. Dahil sa boluntaryong katangian ng karamihan sa mga developer, hindi malamang na lahat sila ay aktibo sa Apache nang sabay-sabay, kaya ang kernel ang may pananagutan sa pagpapanatili nito at paggana. Sa pangkalahatan, ang mga desisyon na dapat gawin ng mga developer ay nabibilang sa kernel at limitado sa mga boto upang isama ang code. Sa kabilang banda, kadalasan ay mayroon silang access sa pagsulat sa repository ng CVS, kaya nagsisilbi silang gateway sa code, na tinitiyak na tama ito at may magandang kalidad.

Minimum na kinakailangan atbenepisyo

Ang Apache ay nakakuha ng malawak na pagtanggap sa web, at ito ang pinakakaraniwang ginagamit na HTTP server mula noong 1996. Naabot nito ang pinakamataas na bahagi ng merkado noong 2005 nang ang server ay ginamit ng 70% ng mga site sa buong mundo. Sa mga nagdaang taon, bumaba ang bahagi nito sa merkado. Kapansin-pansin na para sa Apache, ang gayong pagbaba ay hindi nagpapahiwatig ng pagiging hindi popular at pagkasira ng teknolohiya.

Minimum na kinakailangan para sa pagpapatakbo:

  1. Processor - Pentium.
  2. RAM - 64 MB.
  3. OS-Microsoft Windows, GNU/Linux.
  4. Laki ng pag-install - 50 MB.

Mga Benepisyo:

  1. Modular na disenyo.
  2. Open source.
  3. Multiplatform na disenyo.
  4. Extensibility.
  5. Sikat - madaling makakuha ng tulong at suporta.

Arkitektura ng server

Arkitektura ng server
Arkitektura ng server

Apache modular server ay binubuo ng isang pangunahing seksyon at iba't ibang mga module na nagbibigay ng karamihan sa pangunahing pagpapagana. Ilan sa mga module na ito:

  1. mod_ssl - secure na komunikasyon sa TLS;
  2. mod_rewrite - muling pagsulat ng address, karaniwang ginagamit upang i-convert ang mga dynamic na page gaya ng php sa mga static na page para lokohin ang mga search engine kung saan sila idinisenyo;
  3. mod_dav - Suporta sa protocol ng WebDAV (RFC 2518);
  4. mod_deflate - transparent ang compression algorithm kapag ipinadala ang content sa client;
  5. mod_auth_ldap - nagbibigay-daan sa mga user na mag-authenticate sa isang LDAP server;
  6. mod_proxy_ajp -connector para makipag-ugnayan sa mga dynamic na pahina ng Jakarta Tomcat sa Java (servlets at JSP).

Maaaring palawakin ang base server upang isama ang mga panlabas na module, kabilang ang:

  • mod_cband - kontrol sa trapiko at limitasyon ng bandwidth;
  • mod_perl - dynamic sa Perl;
  • mod_php - dynamic sa PHP;
  • mod_python - dynamic sa Python;
  • mod_rexx - dynamic sa REXX at REXX object;
  • mod_ruby - dynamic sa Ruby;
  • mod asp dot net - dynamic sa Microsoft. NET;
  • mod_mono - dynamic sa mono;
  • mod_security - pag-filter sa antas ng application para sa seguridad.

Configuration at seguridad

Configuration at seguridad
Configuration at seguridad

Upang maunawaan kung ano ang Apache sa mga tuntunin ng seguridad, kailangan mong isaalang-alang ang configuration nito. Karamihan sa pagsasaayos ay ginagawa sa mga file ng apache2.conf at httpd.conf, depende sa system kung saan tumatakbo ang software. Ang anumang pagbabago sa file na ito ay nangangailangan ng pag-restart ng server o sapilitang basahin muli.

Ang lisensya ng software kung saan ipinamamahagi ang pangunahing Apache software ay isang tanda ng kasaysayan ng Apache HTTP Server at ang open source na komunidad. Pinapayagan ng lisensya ang pamamahagi ng mga open at closed source na produkto.

The Free Software Foundation ay hindi isinasaalang-alang ang Apache License na tugma sa bersyon 2 ng GNU General Public License (GPL), kung saan ang software ay lisensyado at hindi isinama sa software. Dapat itong isaalang-alang bagomag-set up ng Apache web server na ipinamahagi sa ilalim ng lisensya ng GPL. Gayunpaman, ang bersyon 3 ng GPL ay may kasamang probisyon na nagbibigay-daan dito na maging tugma sa mga lisensyang may mga sugnay sa pagbabayad-danyos ng patent.

Karamihan sa mga kahinaang panseguridad na natuklasan at naayos ay maaari lamang samantalahin ng mga lokal na user, hindi sa malayo. Gayunpaman, ang ilan ay tumatakbo pa rin nang malayuan sa ilang mga sitwasyon. O kung ginagamit sila ng mga nakakahamak na lokal na user para lumabag sa mga shared hosting agreement gamit ang PHP bilang module ng libreng Apache web server.

Pagsusuri sa paggana ng Apache

Apache Function Check
Apache Function Check

Upang matiyak na gumagana nang maayos ang Apache, magbukas ng web browser at i-type ang sumusunod na address: https://localhost. Pagkatapos ay pindutin ang Enter, may lalabas na puting page na may mensaheng "Ito ay gumagana", na patunay na gumagana nang maayos ang web server.

Binibigyang-daan ka ngApache na lumikha ng mga custom na configuration para i-customize at iakma sa iyong mga pangangailangan. Upang gawin ito, hanapin ang http.conf file sa C:appserv Apache2.2 conf. Naka-back up ito upang maiwasan ang mga error sa runtime, pagkatapos ay bubuksan ito gamit ang anumang editor at babaguhin ang mga kinakailangang linya.

Upang maisagawa nang tama ang mga hakbang na ito, kailangan mong magkaroon ng mahusay na kaalaman sa manggagawang Apache, dahil ang anumang pagbabagong gagawin ay makikita sa pagganap at pagsisimula ng Apache. Salamat sa pinakabagong mga rekomendasyon, mai-install ang server. Ito ay gagana sa isang pangunahing pagsasaayos na nagbibigay-daan sa iyong mag-downloadmga pahina o network application sa Internet.

Pamamahala ng impormasyon

Pamamahala ng impormasyon
Pamamahala ng impormasyon

Ang Apache ay ang pinakaginagamit na web server, ang nangunguna sa pinakamaraming pag-install sa mundo, nangunguna sa iba pang mga solusyon gaya ng Microsoft Internet Information Server (IIS). Ang proyektong ito ay bukas para sa paggamit dahil ito ay multi-platform, may mga bersyon para sa lahat ng pangunahing operating system, ay napaka maaasahan at namumukod-tangi para sa seguridad at pagganap nito.

Ang computer kung saan tumatakbo ang software na ito ay binibigyan ng parehong pangalan. Ito ay kritikal dahil responsable ito sa pagtanggap ng mga kahilingan sa page na nagmumula sa mga bisitang nag-a-access sa site at pamamahala sa kanilang paghahatid o pagtanggi ayon sa itinatag na patakaran sa seguridad. Bagama't mukhang simple ang prosesong ito, kabilang dito ang maraming aspeto at function na dapat kumpletuhin:

  1. Pagganap ng query.
  2. Ang isang malaking bilang ng mga kahilingan sa HTTP, kabilang ang multitasking, ay maaaring iwanang bumagsak ang serbisyo.
  3. Mga paghihigpit sa pag-access sa file, pagkontrol sa pagpapatunay ng user o pag-filter ng mga kahilingan ayon sa kanilang pinagmulan.
  4. Paghawak ng mga error sa mga pahina ng impormasyon ng bisita at pag-redirect sa mga paunang natukoy na pahina.
  5. Pamamahala sa impormasyong ipapadala ayon sa format nito at sapat na ipaalam sa browser na humihiling ng tinukoy na mapagkukunan.
  6. Log ng pamamahala para sa pag-iimbak ng mga natanggap na kahilingan, mga error na naganap, atsa pangkalahatan, lahat ng impormasyon na nakarehistro at nasuri upang makakuha ng mga istatistika ng pag-access sa site.

Binibigyang-daan ka ng Apache na mag-set up ng virtual hosting batay sa mga IP address o pangalan, ibig sabihin, magkaroon ng ilang website sa isang computer.

File apache2.conf

Walang alinlangan, ang apache2.conf ang pinakamahalagang file, dahil tinutukoy nito ang pangkalahatang pag-uugali ng mga web page at responsable din sa pag-access ng iba't ibang module na nagpapalawak sa functionality ng server.

Matatagpuan ito sa direktoryo ng /etc/apache2 at dahil isa itong text file madali itong ma-edit gamit ang text editor. Configuration File Properties - Mga Global Variable at Functionality Extension ng Server.

Ang mga global na variable ng server ay mga variable na tumutukoy sa pangkalahatang operasyon:

  1. Talahanayan ng mga direktiba ng Apache. Ang pangalan ng server ay tinutukoy ng variable ng ServerName, kaya ang anumang pag-redirect o link na umiiral sa mga HTML na dokumento ay gumagana nang maayos. Karamihan sa mga variable ng configuration ay ipinamamahagi sa iba pang maliliit na file na nakaimbak sa mods-available.
  2. Ang.htaccess ay isang nakatagong text file na nagbibigay-daan sa iyong i-customize kung paano gumagana ang server.
  3. Ang "Apache" ay isang partikular na direktoryo nang hindi kinakailangang baguhin ang pangunahing file ng pagsasaayos ng apache2.conf. Kapag humiling ang isang web client ng file mula sa server, tumitingin ito mula sa root directory hanggang sa subdirectory na naglalaman ng hiniling na.htaccess at isinasaalang-alang ang mga direktiba na nilalaman nito bago gumawa ng kahilingan.

Principle.htaccess:

  1. Ipinagbabawal ang paglilista ng mga file sa direktoryo.
  2. Nagre-redirect ng trapiko sa web.
  3. Nagse-set up ng mga page ng error.
  4. Paghigpitan ang pag-access sa ilang partikular na file.
  5. Tanggihan ang access sa mga partikular na IP address o hanay ng mga IP address.
  6. Nagpapalawak ng functionality na nauugnay sa iba pang mga module call at configuration file. Ang lahat ng mga direktiba na nauugnay sa item na ito ay mauunahan ng salitang "Paganahin".

Pag-install ng Apache Web Server

Pag-install ng Apache web server
Pag-install ng Apache web server

AngApache ay orihinal na idinisenyo upang gumana sa teknolohiya ng PHP, ngunit maaari rin itong gumana sa. NET nang walang problema, na ginagawa itong mas matagumpay kaysa sa IIS ng Microsoft, na isang collaborator para sa mga server na gumagamit ng IIS at nagbibigay ng buong suporta sa PHP nang hindi kinakailangang baguhin ang configuration.

Upang mag-install at magpatakbo ng web server, kailangan mo munang i-download ito mula sa opisyal na site. Palaging hanapin ang pinakabagong bersyon ng available na software at tingnan kung makikilala ito bilang Win32 Binary kasama ang OpenSSL.

Ang bersyon ay may built-in na pag-install at sistema ng proteksyon ng data. Kapag napili, ito ay nai-download sa PC. I-double click ang icon ng file upang simulan ang proseso, na simple dahil may kasama itong assistant.

Ang isa sa mga unang window na magbibigay ng kinakailangang impormasyon upang makakonekta ang web server sa network ay ang window ng impormasyon. Doon, pinunan ng user ang isang maikling form sa pamamagitan ng pagdaragdag ng domain name ng network, pangalan ng server, at email addresstagapangasiwa. Para sa unang dalawang opsyon, piliin ang localhost.

Susunod, lalabas ang window ng pag-install, kung saan nakalista ang lahat ng available na bahagi. Piliin silang lahat at tingnan kung umiiral ang folder na c:appserv Apache2.2. Susunod, i-configure ang Apache web server.

Web Monitor sa taskbar

Pagkatapos i-install ang Apache tiyaking nagawa ito nang tama. Upang gawin ito, pumunta sa menu na "Start" at hanapin ang opsyon na "Run". Ang isang pop-up window ay lilitaw kung saan ka nagpasok ng cmd, isang system pop-up screen ay nangyayari. Upang matiyak na ang user ay tumatakbo bilang isang administrator, mag-right click sa window at piliin ang "Run as administrator".

Algoritmo sa pag-install:

  1. Hanapin ang folder ng Apache bin sa Windows console, upang gawin ito, isulat ang sumusunod na pangungusap sa console - c: appserv Apache2.2? sa.
  2. Pagkatapos pumasok, pindutin ang Enter at magiging ganito ang bahagi ng system - C: appserv Apache2.2? Sa>.
  3. Sa folder ng bin, i-type ang http:.exe -k install at pindutin ang Enter.
  4. May lalabas na mensaheng katulad ng ". Apache 2.2: service already install". Ive-verify ng mensaheng ito na matagumpay na na-install ang Apache.

Isa sa mga pinakaepektibong paraan upang suriin kung gumagana nang maayos ang Apache ay ang pagsuri kung aktibo ang monitor ng application. Ito ay makikita sa taskbar. Kung hindi ito aktibo, i-activate ito sa pamamagitan ng pagpunta sa Start menu, All Programs at Apache http Server 2.2., i-click ang Monitor Apache Server at i-activate ito.

Ang Monitor ay kapaki-pakinabang dahil pinapayagan ka nitong ihinto ang server,i-pause at i-activate ito sa kumpletong kaginhawahan nang hindi pumunta sa console window, sa pamamagitan lamang ng pag-click sa icon sa taskbar upang buksan ang control window.

Mga Tip sa Pag-install ng Linux

Mga Tip sa Pag-install ng Linux
Mga Tip sa Pag-install ng Linux

Kung ang isang user ay may website at nangangailangan ng platform para i-host ito, maaari mong gamitin ang mga serbisyo ng isa sa mga hosting provider o subukang i-host ang iyong website sa server mismo.

Algoritmo sa pag-install:

  1. I-download ang pinakabagong stable na bersyon ng Apache.
  2. Mag-download ng mga source file ayon sa system.
  3. I-extract ang mga software file.
  4. Pagkatapos nito, ang mga na-download na file ay kailangang i-unpack: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
  5. Gumagawa ito ng bagong direktoryo sa kasalukuyang direktoryo na may mga source file.
  6. Sa sandaling lumitaw ang mga file, sabihin sa makina kung saan mahahanap ang lahat ng orihinal. Ang pinakamadaling paraan para gawin ito ay tanggapin ang lahat ng default at i-type lang ang:./configure.
  7. I-set up ang Apache, sa kondisyon na walang mga problema sa pag-install at pagbuo. Inaayos ng user ang configuration, na katumbas ng pag-edit ng httpd.conf file. Karaniwan itong ini-edit gamit ang isang text editor - vi PREFIX /conf/httpd.conf. Dapat na root ka para makagawa ng anumang pagbabago.
  8. Suriin ang pagpapatakbo ng server.

Application sa World Wide Web

Application sa World Wide Web
Application sa World Wide Web

Ang Apach ay pangunahing ginagamit upang magsumite ng mga static at dynamic na pahina sa World Wide Web. Maraming mga application ang idinisenyo gamit angAng mga kapaligiran ng pagpapatupad ng Apache o gagamit ng mga katangian ng server na ito. Ang Apache ay isang bahagi ng server sa sikat na LAMP application platform kasama ang MySQL at PHP, Perl, Python at Ruby na mga programming language, kasama ang Oracle database at ang IBM WebSphere application server. Isinasama ito ng Mac OS X bilang bahagi ng sarili nitong web server at suporta para sa mga application ng WebObjects.

Ang Apache ay ginagamit para sa maraming iba pang gawain kung saan kailangang ma-access ang content sa isang secure at maaasahang paraan. Halimbawa, kapag nagbabahagi ng mga file mula sa isang personal na computer patungo sa Internet. Ang isang user na may Apache na naka-install sa kanilang desktop ay maaaring arbitraryong maglagay ng mga file sa root ng dokumento, kung saan maaari silang maibahagi.

Ang mga developer ng web application ay minsan ay gumagamit ng lokal na bersyon ng Apache upang i-preview at subukan ang code sa panahon ng pag-develop. Ang Microsoft Internet Information Services (IIS) ay ang pangunahing katunggali ng Apache, gayundin ang web server ng Sun Java System ng Sun Microsystems at marami pang ibang application gaya ng Zeus Web-Server.

Ang ilan sa mga pinakamalaking website sa mundo ay pinapagana ng Apache. Ang front end ng Google search engine ay batay sa isang binagong bersyon nito na tinatawag na Google Web Server (GWS). Maraming proyekto sa Wikipedia ang tumatakbo din sa mga server ng Apache.

Inirerekumendang: