Apache-ը հզոր սերվեր է, որի անունը ծագել է անգլերեն արտահայտությունից, որը կապված է հյուսիսամերիկյան հնդկացիների Ապաչի ցեղի անվան հետ: Ռուս օգտատերերի շրջանում այն ունի «Apache» ընդհանուր անվանումը։ Սա բաց կոդով ծրագրակազմ է՝ GPL լիցենզիայով: Նրա ամենամեծ առավելություններից մեկը միջպլատֆորմային սերվերն է, ինչը նշանակում է, որ այն կարող է աշխատել տարբեր օպերացիոն համակարգերի վրա՝ պահպանելով գերազանց կատարումը:
1996 թվականից ի վեր սա ամենահայտնի սերվերն է աշխարհում՝ իր կայունության և անվտանգության շնորհիվ: Apache-ն մշակվել է օգտվող-մշակողների համայնքի կողմից, որը ղեկավարվում է Apache Software Foundation-ի կողմից:
Ապաչիի պատմություն
1989 թվականի մարտին CERN-ում (Շվեյցարիա) աշխատող անգլիացի գիտնական Թիմ Բերներս Լին առաջարկեց CERN-ի նախագծերի հսկայական քանակությամբ տեղեկատվության կառավարման նոր միջոց: Այն ժամանակ ոչ ոք չգիտեր, թե ինչ է Apache-ն։ Հիպերկապված փաստաթղթերի ցանցի սկզբնական զարգացումը, ինչպես դրանք անվանեց Թեդ Նելսոնը 1965 թվականին, հանգեցրեց WWW-ի ստեղծմանը:- առաջին ծրագրաշարը, որը թողարկվել է 1990 թվականի նոյեմբերին World Wide Web անունով, վեբ բրաուզերով, գրաֆիկական ինտերֆեյսով և WYSIWYG խմբագրիչով: Երկու տարի անց WWW սերվերների ցանկում ընդամենը մոտ երեսուն գրառում կար, որոնց թվում էր HTTP-ները NCSA:
Իրական Apache-ի պատմությունը սկսվում է 1995 թվականի մարտին՝ NCSA HTTPD 1.3 սերվերի վրա հիմնված Apache 0.2-ի թողարկմամբ: Շատ օգտատերեր հետաքրքրված են իմանալու, թե ինչ է Apache-ն այսօր և ինչպիսին էր ծրագիրը իր գոյության առաջին ամիսներին: Դա ընդամենը NCSA սերվերի վրա կիրառված խմբագրումների մի շարք էր: Հաջորդը, Ռոբերտ Թաուն թողարկեց Shambhala 0.1-ը API-ներով մոդուլների համար, որոնք շատ հաջողակ էին:
Ծրագրի ամենամեծ նշաձողը եղել է HTTP 1.1 ստանդարտի լիարժեք համապատասխանությունը, որը ներառվել է 1997 թվականի ապրիլին որպես 1.2 տարբերակ: Այս տարբերակն արդեն ներառում էր Windows NT հարթակը, որը գործարկվեց 1997 թվականի հուլիսին։ Կազմաձևման ֆայլերի համակցումն իրականացվել է 1.3.3. թողարկումում
Apache Group-ը պատասխանատու է վեբ սերվերի էվոլյուցիայի և զարգացման հատուկ որոշումների համար: Այս խումբը պետք է տարբերվի հիմնական մշակողներից՝ Core group: Ծրագրավորողների մեծամասնության կամավոր բնույթը քիչ հավանական է դարձնում, որ նրանք բոլորը միաժամանակ ակտիվ լինեն Apache-ում, ուստի միջուկը պատասխանատու է այն պահպանելու և գործարկելու համար: Ընդհանուր առմամբ, որոշումները, որոնք մշակողները պետք է կայացնեն, պատկանում են միջուկին և սահմանափակվում են ծածկագիրը ներառելու ձայներով: Մյուս կողմից, նրանք սովորաբար մուտք ունեն գրելու մուտք դեպի CVS շտեմարան, ուստի նրանք գործում են որպես մուտք դեպի կոդը՝ ապահովելով այն ճիշտ և որակյալ:
Նվազագույն պահանջներ ևառավելություններ
Apache-ն լայն տարածում է գտել համացանցում և եղել է ամենատարածված HTTP սերվերը 1996 թվականից: Իր ամենաբարձր շուկայական մասնաբաժինը հասավ 2005 թվականին, երբ սերվերն օգտագործեց աշխարհի կայքերի 70%-ը: Վերջին տարիներին նրա մասնաբաժինը շուկայում նվազել է։ Հատկանշական է, որ Apache-ի համար նման անկումը չի վկայում տեխնոլոգիայի ոչ հանրաճանաչության և դեգրադացիայի մասին։
Շահագործման նվազագույն պահանջներ՝
- Պրոցեսոր - Pentium.
- RAM - 64 ՄԲ։
- OS-Microsoft Windows, GNU/Linux.
- Տեղադրման չափը՝ 50 ՄԲ։
Օգուտները.
- Մոդուլային դիզայն.
- Բաց կոդ.
- Մուլտիպլատֆորմ դիզայն։
- Ընդարձակելիություն.
- Հանրաճանաչ. հեշտ է օգնություն և աջակցություն ստանալ:
Սերվերի ճարտարապետություն
Apache մոդուլային սերվերը բաղկացած է հիմնական բաժնից և տարբեր մոդուլներից, որոնք ապահովում են հիմնական գործառույթների մեծ մասը: Այս մոդուլներից մի քանիսը.
- mod_ssl - անվտանգ հաղորդակցություն TLS-ի միջոցով;
- mod_rewrite - հասցեի վերաշարադրում, որը սովորաբար օգտագործվում է դինամիկ էջերը, ինչպիսիք են php-ը ստատիկ էջերի փոխարկելու համար, որպեսզի խաբեն որոնման համակարգերին, թե որտեղ են դրանք նախագծվել;
- mod_dav - WebDAV արձանագրության աջակցություն (RFC 2518);
- mod_deflate - սեղմման ալգորիթմը թափանցիկ է, երբ բովանդակությունը ուղարկվում է հաճախորդին;
- mod_auth_ldap - թույլ է տալիս օգտվողներին նույնականացնել LDAP սերվերում;
- mod_proxy_ajp -Java-ում Jakarta Tomcat դինամիկ էջերի հետ հաղորդակցվելու միակցիչ (servlets և JSP):
Հիմնական սերվերը կարող է ընդլայնվել՝ ներառելով արտաքին մոդուլներ, ներառյալ՝
- mod_cband - երթևեկության վերահսկում և թողունակության սահմանափակում;
- mod_perl - դինամիկ Perl-ում;
- mod_php - դինամիկ PHP-ում;
- mod_python - դինամիկ Python-ում;
- mod_rexx - դինամիկ REXX և REXX օբյեկտներում;
- mod_ruby - դինամիկ Ruby-ում;
- mod asp dot net - դինամիկ Microsoft. NET-ում;
- mod_mono - դինամիկից մոնո;
- mod_security - հավելվածի մակարդակի զտում անվտանգության համար:
Կազմաձևում և անվտանգություն
Որպեսզի հասկանաք, թե ինչ է Apache-ն անվտանգության առումով, դուք պետք է հաշվի առնեք դրա կոնֆիգուրացիան: Կազմաձևման մեծ մասը կատարվում է apache2.conf և httpd.conf ֆայլերում՝ կախված այն համակարգից, որով աշխատում է ծրագրաշարը: Այս ֆայլի ցանկացած փոփոխություն պահանջում է սերվերի վերագործարկում կամ նորից հարկադիր ընթերցում:
Ծրագրային լիցենզիան, որով բաշխվում է հիմնական Apache ծրագրակազմը, հանդիսանում է Apache HTTP սերվերի և բաց կոդով համայնքի պատմության բնորոշ նշան: Լիցենզիան թույլ է տալիս բաց և փակ կոդով արտադրանքի բաշխում։
Ազատ ծրագրաշարի հիմնադրամը չի համարում Apache լիցենզիան համատեղելի GNU Ընդհանուր հանրային լիցենզիայի (GPL) 2 տարբերակի հետ, որում ծրագրակազմը լիցենզավորված է և ինտեգրված չէ ծրագրային ապահովմանը: Սա պետք է հաշվի առնել նախկինումստեղծել Apache վեբ սերվեր, որը բաշխված է GPL լիցենզիայի ներքո: Այնուամենայնիվ, GPL-ի 3-րդ տարբերակը ներառում է դրույթ, որը թույլ է տալիս այն համատեղելի լինել արտոնագրերի հետ, որոնք ունեն արտոնագրային փոխհատուցման դրույթներ:
Հայտնաբերված և շտկված անվտանգության խոցելիության մեծ մասը կարող է շահագործվել միայն տեղական օգտատերերի կողմից, այլ ոչ հեռակա կարգով: Այնուամենայնիվ, ոմանք դեռևս որոշակի իրավիճակներում աշխատում են հեռակա կարգով: Կամ եթե դրանք օգտագործվում են տեղական չարամիտ օգտատերերի կողմից՝ խախտելու ընդհանուր հոստինգի համաձայնագրերը, օգտագործելով PHP-ը՝ որպես անվճար Apache վեբ սերվերի մոդուլ:
Ստուգում ենք Apache-ի աշխատանքը
Որպեսզի համոզվեք, որ Apache-ը ճիշտ է աշխատում, բացեք վեբ բրաուզերը և մուտքագրեք հետևյալ հասցեն՝ https://localhost: Այնուհետև սեղմեք Enter, հայտնվում է սպիտակ էջ «Սա աշխատում է» հաղորդագրությամբ, ինչը վկայում է այն մասին, որ վեբ սերվերը լավ է աշխատում:
Apache-ն թույլ է տալիս ստեղծել անհատականացված կոնֆիգուրացիաներ՝ հարմարեցնելու և ձեր կարիքներին հարմարվելու համար: Դա անելու համար գտեք http.conf ֆայլը C:appserv Apache2.2 conf-ում: Այն կրկնօրինակվում է՝ գործարկման ժամանակի սխալներից խուսափելու համար, այնուհետև այն բացվում է ցանկացած խմբագրիչով և փոխվում են անհրաժեշտ տողերը:
Այս քայլերը ճիշտ կատարելու համար դուք պետք է լավ գիտելիքներ ունենաք Apache-ի աշխատողի մասին, քանի որ կատարված ցանկացած փոփոխություն կարտացոլվի Apache-ի աշխատանքի և գործարկման մեջ: Վերջին առաջարկությունների շնորհիվ սերվերը կտեղադրվի: Այն կաշխատի հիմնական կազմաձևում, որը թույլ է տալիս ներբեռնելէջեր կամ ցանցային հավելվածներ ինտերնետում։
Տեղեկատվության կառավարում
Apache-ն ամենաշատ օգտագործվող վեբ սերվերն է, աշխարհում ամենաշատ տեղադրումներով առաջատարը, որը շատ առաջ է մյուս լուծումներից, ինչպիսիք են Microsoft Internet Information Server-ը (IIS): Այս նախագիծը բաց է օգտագործման համար, քանի որ այն բազմահարթակ է, ունի բոլոր հիմնական օպերացիոն համակարգերի տարբերակները, շատ հուսալի է և աչքի է ընկնում իր անվտանգությամբ և կատարողականությամբ:
Համակարգիչը, որի վրա աշխատում է այս ծրագրաշարը, տրվում է նույն անունը: Սա կարևոր է, քանի որ այն պատասխանատու է կայք մուտք գործած այցելուների էջերի հարցումներն ընդունելու և դրանց առաքումը կամ մերժումը կառավարելու համար՝ համաձայն սահմանված անվտանգության քաղաքականության: Չնայած այս գործընթացը կարող է պարզ թվալ, այն ներառում է բազմաթիվ ասպեկտներ և գործառույթներ, որոնք պետք է ավարտվեն.
- Հարցման կատարում։
- HTTP հարցումների մեծ քանակությունը, ներառյալ բազմաբնույթ առաջադրանքները, կարող են թողնել ծառայությունը:
- Սահմանափակումներ ֆայլերի մուտքի, օգտատերերի նույնականացման վերահսկման կամ դրանց ծագման հարցումների զտման վրա:
- Սխալների կառավարում այցելուների տեղեկատվական էջերում և վերահղում դեպի նախապես սահմանված էջեր:
- Հաղորդվող տեղեկատվության կառավարում ըստ դրա ձևաչափի և համապատասխան կերպով տեղեկացնել դիտարկիչին, որը խնդրում է նշված ռեսուրսը:
- Կառավարման մատյան՝ ստացված հարցումները, տեղի ունեցած սխալները ևընդհանուր առմամբ, բոլոր տեղեկությունները, որոնք գրանցվում և վերլուծվում են կայքի մուտքի վիճակագրություն ստանալու համար:
Apache-ն թույլ է տալիս ստեղծել վիրտուալ հոսթինգ՝ հիմնված IP հասցեների կամ անունների վրա, այսինքն՝ ունենալ մի քանի կայքեր մեկ համակարգչի վրա:
Ֆայլ apache2.conf
Անկասկած, apache2.conf-ը ամենակարևոր ֆայլն է, քանի որ այն սահմանում է վեբ էջերի ընդհանուր վարքը և նաև պատասխանատու է սերվերի ֆունկցիոնալությունը ընդլայնող տարբեր մոդուլներ մուտք գործելու համար:
Այն գտնվում է /etc/apache2 գրացուցակում և քանի որ այն տեքստային ֆայլ է, այն հեշտությամբ կարելի է խմբագրել տեքստային խմբագրիչով: Կազմաձևման ֆայլի հատկություններ - Սերվերի գլոբալ փոփոխականներ և ֆունկցիոնալ ընդլայնումներ:
Գլոբալ սերվերի փոփոխականները փոփոխականներ են, որոնք սահմանում են ընդհանուր գործողությունը.
- Ապաչի հրահանգների աղյուսակ: Սերվերի անունը նշվում է ServerName փոփոխականով, ուստի ցանկացած վերահղում կամ հղում, որը գոյություն ունի HTML փաստաթղթերում, լավ է աշխատում: Կազմաձևման փոփոխականների մեծ մասը բաշխված է այլ փոքր ֆայլերի միջև, որոնք պահվում են mods-available-ում:
- .htaccess-ը թաքնված տեքստային ֆայլ է, որը թույլ է տալիս հարմարեցնել սերվերի աշխատանքը:
- «Apache»-ը հատուկ գրացուցակ է՝ առանց հիմնական apache2.conf կազմաձևման ֆայլը փոփոխելու: Երբ վեբ-հաճախորդը ֆայլ է պահանջում սերվերից, այն արմատային գրացուցակից նայում է պահանջվող.htaccess-ը պարունակող ենթատեղեկատուին և հաշվի է առնում իր պարունակած հրահանգները նախքան հարցումը կատարելը:
Սկզբունք.htaccess:
- Արգելում է ցուցակագրել ֆայլերը գրացուցակում:
- Վերահղում է վեբ տրաֆիկը:
- Սխալների էջեր է տեղադրում:
- Սահմանափակել մուտքը որոշակի ֆայլեր։
- Մերժել մուտքը կոնկրետ IP հասցեներ կամ IP հասցեների տիրույթ:
- Ընդլայնում է ֆունկցիոնալությունը՝ կապված այլ մոդուլի զանգերի և կազմաձևման ֆայլերի հետ: Այս կետի հետ կապված բոլոր հրահանգներին նախորդելու է «Միացնել» բառը:
Apache վեբ սերվերի տեղադրում
Apache-ն ի սկզբանե նախագծված էր PHP տեխնոլոգիայի հետ աշխատելու համար, սակայն այն կարող է նաև աշխատել. NET-ի հետ առանց խնդիրների, ինչը այն դարձնում է ավելի հաջող, քան Microsoft-ի IIS-ը, որը համագործակցում է IIS օգտագործող սերվերների համար և ապահովում է PHP-ի ամբողջական աջակցություն՝ առանց անհրաժեշտության: փոխել կոնֆիգուրացիան:
Վեբ սերվեր տեղադրելու և գործարկելու համար նախ անհրաժեշտ է այն ներբեռնել պաշտոնական կայքից: Միշտ գտեք հասանելի ծրագրաշարի վերջին տարբերակը և ստուգեք, թե արդյոք այն կճանաչվի որպես Win32 Երկուական, ներառյալ OpenSSL:
Տարբերակն ունի ներկառուցված տեղադրման և տվյալների պաշտպանության համակարգ: Ընտրվելուց հետո այն ներբեռնվում է համակարգիչ: Կրկնակի սեղմեք ֆայլի պատկերակի վրա՝ գործընթացը սկսելու համար, որը պարզ է, քանի որ այն ուղեկցվում է օգնականով:
Առաջին պատուհաններից մեկը, որը կտրամադրի անհրաժեշտ տեղեկատվությունը, որպեսզի վեբ սերվերը կարողանա միանալ ցանցին, տեղեկատվական պատուհանն է։ Այնտեղ օգտատերը լրացնում է կարճ ձևաթուղթ՝ ավելացնելով ցանցի տիրույթի անունը, սերվերի անունը և էլփոստի հասցենադմինիստրատոր. Առաջին երկու տարբերակների համար ընտրեք localhost:
Հաջորդը կհայտնվի տեղադրման պատուհանը, որտեղ նշված են բոլոր հասանելի բաղադրիչները: Ընտրեք բոլորին և ստուգեք, արդյոք c:appserv Apache2.2 թղթապանակը գոյություն ունի: Հաջորդը, կարգավորեք Apache վեբ սերվերը:
Վեբ մոնիտոր առաջադրանքների տողում
Apache-ն տեղադրելուց հետո համոզվեք, որ այն ճիշտ է արված: Դա անելու համար անցեք «Սկսել» մենյու և գտեք «Գործարկել» տարբերակը: Կհայտնվի թռուցիկ պատուհան, որտեղ մուտքագրում եք cmd, հայտնվում է համակարգի թռուցիկ էկրան: Համոզվելու համար, որ օգտվողը աշխատում է որպես ադմինիստրատոր, աջ սեղմեք պատուհանի վրա և ընտրեք «Գործարկել որպես ադմինիստրատոր»:
Տեղադրման ալգորիթմ՝
- Գտեք Apache bin պանակը Windows-ի վահանակում, դա անելու համար վահանակում գրեք հետևյալ նախադասությունը՝ c. appserv Apache2.2? in.
- Մուտք գործելուց հետո սեղմեք Enter և համակարգի բաղադրիչը կունենա այսպիսի տեսք. C: appserv Apache2.2? In>.
- Բենայի պանակում մուտքագրեք http:.exe -k install և սեղմեք Enter:
- Կհայտնվի «. Apache 2.2. ծառայությունն արդեն տեղադրված»-ի նման հաղորդագրություն: Այս հաղորդագրությունը կհաստատի, որ Apache-ը հաջողությամբ տեղադրվել է:
Apache-ի ճիշտ գործարկումը ստուգելու ամենաարդյունավետ միջոցներից մեկը ստուգելն է՝ արդյոք հավելվածի մոնիտորն ակտիվ է: Այն կարելի է տեսնել առաջադրանքների տողում: Եթե այն ակտիվ չէ, ակտիվացրեք այն՝ անցնելով Start մենյու, Բոլոր ծրագրերը և Apache http Server 2.2., սեղմեք Monitor Apache Server-ը և ակտիվացրեք այն:
Մոնիտորը օգտակար է, քանի որ այն թույլ է տալիս դադարեցնել սերվերը,Դադարեցնել և ակտիվացնել այն կատարյալ հարմարավետությամբ՝ առանց վահանակի պատուհան գնալու, պարզապես սեղմելով առաջադրանքների տողի պատկերակի վրա՝ կառավարման պատուհանը բացելու համար:
Linux տեղադրման խորհուրդներ
Եթե օգտատերն ունի կայք և այն հոսթինգի համար հարթակի կարիք ունի, կարող եք օգտվել հոսթինգ պրովայդերներից մեկի ծառայություններից կամ փորձել ինքներդ տեղադրել ձեր կայքը սերվերի վրա:
Տեղադրման ալգորիթմ՝
- Ներբեռնեք Apache-ի վերջին կայուն տարբերակը:
- Ներբեռնեք աղբյուրի ֆայլերը ըստ համակարգի:
- Արտահանեք ծրագրային ֆայլեր:
- Դրանից հետո ներբեռնված ֆայլերը պետք է ապափաթեթավորվեն. gunzip -d httpd-2_0_NN.tar.gz; tar xvf
- Սա ստեղծում է նոր գրացուցակ ընթացիկ գրացուցակում՝ աղբյուրի ֆայլերով:
- Հենց որ ֆայլերը հայտնվեն, ասեք սարքին, թե որտեղ գտնել բոլոր բնօրինակները: Դա անելու ամենահեշտ ձևն է ընդունել բոլոր կանխադրվածները և պարզապես մուտքագրել՝./configure:
- Կարգավորեք Apache-ն, պայմանով, որ տեղադրման և կառուցման հետ կապված խնդիրներ չլինեն: Օգտագործողը կարգավորում է կոնֆիգուրացիան, որը համարժեք է httpd.conf ֆայլի խմբագրմանը: Այն սովորաբար խմբագրվում է տեքստային խմբագրիչով՝ vi PREFIX /conf/httpd.conf: Փոփոխություններ անելու համար դուք պետք է արմատական լինեք:
- Ստուգեք սերվերի աշխատանքը։
Դիմում համաշխարհային ցանցում
Apach-ը հիմնականում օգտագործվում է ստատիկ և դինամիկ էջեր Համաշխարհային ցանցին ներկայացնելու համար: Շատ հավելվածներ նախագծված ենApache-ի իրականացման միջավայրերը կամ կօգտագործեն այս սերվերի բնութագրերը: Apach-ը սերվերի բաղադրիչ է հայտնի LAMP հավելվածի հարթակում MySQL և PHP, Perl, Python և Ruby ծրագրավորման լեզուների հետ միասին, ներառյալ Oracle տվյալների բազան և IBM WebSphere հավելվածի սերվերը: Mac OS X-ն այն ինտեգրում է որպես սեփական վեբ սերվերի և WebObjects հավելվածների աջակցության մաս:
Apache-ն օգտագործվում է բազմաթիվ այլ խնդիրների համար, որտեղ բովանդակությունը պետք է ապահով և հուսալի կերպով մուտք գործի: Օրինակ՝ անձնական համակարգչից ինտերնետ ֆայլեր փոխանակելիս: Օգտատերը, ով ունի Apache-ն տեղադրված իր աշխատասեղանին, կարող է կամայականորեն ֆայլեր տեղադրել փաստաթղթի արմատում, որտեղից դրանք կարող են համօգտագործվել:
Վեբ հավելվածների մշակողները երբեմն օգտագործում են Apache-ի տեղական տարբերակը՝ մշակման ընթացքում կոդը նախադիտելու և փորձարկելու համար: Microsoft Internet Information Services (IIS) Apache-ի գլխավոր մրցակիցն է, ինչպես նաև Sun Microsystems-ի Sun Java System վեբ սերվերը և շատ այլ հավելվածներ, ինչպիսիք են Zeus Web-Server-ը:
Աշխարհի ամենամեծ կայքերից մի քանիսը ստեղծվել են Apache-ի կողմից: Google որոնողական համակարգի ճակատային մասը հիմնված է դրա փոփոխված տարբերակի վրա, որը կոչվում է Google Web Server (GWS): Վիքիպեդիայի շատ նախագծեր նույնպես աշխատում են Apache սերվերների վրա: