Apache - аты Солтүстік Америка үндістерінің Апачи тайпасының атымен байланысты ағылшын сөзінен шыққан қуатты сервер. Орыс қолданушылары арасында оның «Апачи» деген жалпы атауы бар. Бұл GPL лицензиясы бар ашық бастапқы бағдарламалық құрал. Оның ең үлкен артықшылықтарының бірі - кросс-платформалық сервер, яғни ол тамаша өнімділікті сақтай отырып, әртүрлі операциялық жүйелерде жұмыс істей алады.
1996 жылдан бері бұл тұрақтылығы мен қауіпсіздігінің арқасында әлемдегі ең танымал сервер. Apache қолданбасын Apache Software Foundation басқаратын пайдаланушы әзірлеушілер қауымдастығы әзірлеген.
Apache тарихы
1989 жылы наурызда CERN-де (Швейцария) жұмыс істейтін ағылшын ғалымы Тим Бернерс Ли CERN жобаларындағы ақпараттың үлкен көлемін басқарудың жаңа әдісін ұсынды. Ол кезде Апачидің не екенін ешкім білмейтін. 1965 жылы Тед Нельсон атағандай гиперсілтемеленген құжат желісінің бастапқы дамуы WWW-ның құрылуына әкелді.- 1990 жылдың қараша айында World Wide Web атауымен веб-шолғышы, графикалық интерфейсі және WYSIWYG редакторы бар бірінші бағдарламалық жасақтама. Екі жылдан кейін WWW серверлерінің тізімінде тек отызға жуық жазба болды, олардың арасында HTTPs NCSA болды.
Нағыз Apache тарихы 1995 жылдың наурыз айында NCSA HTTPD 1.3 серверіне негізделген Apache 0.2 шығарылымымен басталады. Көптеген пайдаланушылар Apache бүгінгі күні не екенін және оның пайда болуының алғашқы айларында бағдарламаның қандай болғанын білуге қызығушылық танытады. Бұл NCSA серверіне қолданылған өңдеулер жиынтығы ғана болды. Содан кейін Роберт Тау өте сәтті болған модульдерге арналған API интерфейстері бар Shambhala 0.1 нұсқасын шығарды.
Жобаның ең үлкен кезеңдері HTTP 1.1 стандартына толық сәйкестік болды, ол 1997 жылдың сәуірінде 1.2 нұсқасы ретінде енгізілген. Бұл нұсқа 1997 жылдың шілдесінде іске қосылған Windows NT платформасын қамтыды. Конфигурация файлдарын біріктіру 1.3.3 шығарылымында орындалды.
Apache тобы веб-сервердің эволюциясына және арнайы әзірлеу шешімдеріне жауап береді. Бұл топты негізгі әзірлеушілерден - Core тобынан ажырату керек. Әзірлеушілердің көпшілігінің ерікті табиғаты олардың барлығының бір уақытта Apache-де белсенді болуы екіталай, сондықтан ядро оны қосуға және іске қосуға жауапты. Жалпы, әзірлеушілер қабылдауы керек шешімдер ядроға жатады және кодты қосу үшін дауыс берумен шектеледі. Екінші жағынан, олар әдетте CVS репозиторийіне жазу рұқсатына ие, сондықтан олар кодтың дұрыс және сапалы болуын қамтамасыз ететін шлюз ретінде әрекет етеді.
Ең төменгі талаптар жәнеартықшылықтар
Apache интернетте кеңінен танымал болды және 1996 жылдан бері ең жиі қолданылатын HTTP сервері болды. 2005 жылы серверді дүние жүзіндегі сайттардың 70%-ы пайдаланған кезде нарықтағы ең жоғары үлесіне жетті. Соңғы жылдары оның нарықтағы үлесі төмендеді. Бір қызығы, Apache үшін мұндай құлдырау технологияның танымал еместігін және деградациясын көрсетпейді.
Жұмыс істеуге қойылатын минималды талаптар:
- Процессор - Pentium.
- ЖЖҚ - 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 динамикалық беттерімен байланысу үшін қосқыш (сервлеттер және 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 сервері мен ашық бастапқы коды қауымдастығы тарихының белгісі болып табылады. Лицензия ашық және жабық бастапқы өнімдерді таратуға мүмкіндік береді.
Еркін бағдарламалық құрал қоры бағдарламалық құрал лицензияланған және бағдарламалық құралмен біріктірілмеген GNU General Public License (GPL) 2 нұсқасымен үйлесімді Apache лицензиясын қарастырмайды. Мұны бұрын ескеру керекGPL лицензиясы бойынша таратылатын Apache веб-серверін орнату. Дегенмен, GPL 3-нұсқасында оның патенттік өтемақы туралы баптары бар лицензиялармен үйлесімді болуына мүмкіндік беретін ереже бар.
Анықталған және түзетілген қауіпсіздік осалдықтарының көпшілігін қашықтан емес, жергілікті пайдаланушылар ғана пайдалана алады. Дегенмен, кейбіреулер белгілі бір жағдайларда қашықтан жұмыс істейді. Немесе оларды зиянды жергілікті пайдаланушылар тегін Apache веб-серверінің модулі ретінде PHP арқылы ортақ хостинг келісімдерін бұзу үшін пайдаланса.
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 каталогында орналасқан және ол мәтіндік файл болғандықтан, оны мәтіндік редактордың көмегімен оңай өңдеуге болады. Конфигурация файлының сипаттары - Сервердің ғаламдық айнымалылары және функционалдық кеңейтімдері.
Жаһандық сервер айнымалылары жалпы әрекетті анықтайтын айнымалылар:
- Apache директиваларының кестесі. Сервер атауы ServerName айнымалысымен белгіленеді, сондықтан HTML құжаттарында бар кез келген қайта бағыттау немесе сілтеме жақсы жұмыс істейді. Көптеген конфигурация айнымалылары mods-available ішінде сақталған басқа шағын файлдар арасында таратылады.
- .htaccess – сервер жұмысын реттеуге мүмкіндік беретін жасырын мәтіндік файл.
- "Apache" - негізгі apache2.conf конфигурация файлын өзгерту қажетсіз арнайы каталог. Веб-клиент серверден файлды сұраған кезде, ол түбірлік каталогтан сұралған.htaccess бар ішкі каталогқа қарайды және сұрауды жасамас бұрын құрамындағы директиваларды ескереді.
Принципі.htaccess:
- Файлдарды каталогта көрсетуге тыйым салады.
- Веб-трафикті қайта бағыттайды.
- Қате беттерін реттейді.
- Белгілі бір файлдарға кіруді шектеңіз.
- Арнайы IP мекенжайларына немесе IP мекенжайларының ауқымдарына рұқсат бермеу.
- Басқа модуль шақыруларына және конфигурация файлдарына қатысты функцияларды кеңейтеді. Осы тармақпен байланысты барлық директивалар алдында "Қосу" сөзі болады.
Apache веб-серверін орнату
Apache бастапқыда PHP технологиясымен жұмыс істеуге арналған, бірақ ол. NET-пен де еш қиындықсыз жұмыс істей алады, бұл оны Microsoft корпорациясының IIS жүйесіне қарағанда табыстырақ етеді, ол IIS пайдаланатын серверлер үшін серіктес болып табылады және қажетсіз PHP толық қолдауын қамтамасыз етеді. конфигурацияны өзгертіңіз.
Веб-серверді орнату және іске қосу үшін алдымен оны ресми сайттан жүктеп алу керек. Әрқашан қолжетімді бағдарламалық құралдың соңғы нұсқасын табыңыз және оның OpenSSL қоса алғанда Win32 Binary ретінде анықталатынын тексеріңіз.
Нұсқада кірістірілген орнату және деректерді қорғау жүйесі бар. Таңдағаннан кейін ол компьютерге жүктеледі. Процесті бастау үшін файл белгішесін екі рет нұқыңыз, бұл ассистентпен бірге жүретін қарапайым.
Веб-сервер желіге қосылуы үшін қажетті ақпаратты беретін алғашқы терезелердің бірі - ақпараттық терезе. Онда пайдаланушы желілік домен атауын, сервер атауын және электрондық пошта мекенжайын қосу арқылы қысқа пішінді толтырадыәкімші. Алғашқы екі опция үшін localhost таңдаңыз.
Содан кейін барлық қолжетімді құрамдас бөліктер тізімделген орнату терезесі пайда болады. Олардың барлығын таңдап, c:appserv Apache2.2 қалтасының бар-жоғын тексеріңіз. Содан кейін Apache веб-серверін конфигурациялаңыз.
Тапсырмалар тақтасындағы веб-монитор
Apache орнатқаннан кейін оның дұрыс жасалғанына көз жеткізіңіз. Мұны істеу үшін «Бастау» мәзіріне өтіп, «Орындау» опциясын табыңыз. Сіз cmd енгізетін қалқымалы терезе пайда болады, жүйенің қалқымалы экраны пайда болады. Пайдаланушының әкімші ретінде жұмыс істеп тұрғанына көз жеткізу үшін терезені тінтуірдің оң жақ түймешігімен басып, "Әкімші ретінде іске қосу" пәрменін таңдаңыз.
Орнату алгоритмі:
- Windows консолінен Apache bin қалтасын табыңыз, ол үшін консольге келесі сөйлемді жазыңыз - c: appserv Apache2.2?
- Енгізгеннен кейін Enter пернесін басыңыз, сонда жүйе құрамдас бөлігі келесідей болады - C: appserv Apache2.2? In>.
- Қолдан қалтасына http:.exe -k install деп теріп, Enter пернесін басыңыз.
- ". Apache 2.2: қызмет әлдеқашан орнатылған" дегенге ұқсас хабар пайда болады. Бұл хабар Apache сәтті орнатылғанын растайды.
Apache дұрыс жұмыс істеп тұрғанын тексерудің ең тиімді жолдарының бірі қолданба мониторының белсенді екенін тексеру болып табылады. Оны тапсырмалар тақтасында көруге болады. Егер ол белсенді болмаса, оны «Бастау» мәзіріне, «Барлық бағдарламалар» және «Apache http Server 2.2.» бөліміне өтіп, Monitor Apache серверін басып, іске қосыңыз.
Монитор пайдалы, себебі ол серверді тоқтатуға мүмкіндік береді,Басқару терезесін ашу үшін тапсырмалар тақтасындағы белгішені басу арқылы консоль терезесіне бармай-ақ оны толық ыңғайлы түрде кідіртіңіз және белсендіріңіз.
Linux орнату бойынша кеңестер
Егер пайдаланушының веб-сайты болса және оны орналастыру үшін платформа қажет болса, сіз хостинг провайдерлерінің бірінің қызметтерін пайдалана аласыз немесе веб-сайтыңызды серверде өзіңіз орналастырып көріңіз.
Орнату алгоритмі:
- Apache бағдарламасының соңғы тұрақты нұсқасын жүктеп алыңыз.
- Жүйеге сәйкес бастапқы файлдарды жүктеп алыңыз.
- Бағдарлама файлдарын шығарып алыңыз.
- Осыдан кейін жүктеп алынған файлдарды ашу қажет: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
- Бұл бастапқы файлдармен ағымдағы каталогта жаңа каталог жасайды.
- Файлдар пайда болған бойда құрылғыға барлық түпнұсқаларды қайдан табуға болатынын айтыңыз. Мұны істеудің ең оңай жолы - барлық әдепкі параметрлерді қабылдап, жай ғана теріңіз:./configure.
- Орнату және құрастыру кезінде проблемалар болмаса, Apache орнатыңыз. Пайдаланушы конфигурацияны реттейді, ол httpd.conf файлын өңдеуге тең. Ол әдетте мәтіндік редактормен өңделеді - vi PREFIX /conf/httpd.conf. Кез келген өзгертулер енгізу үшін root болуы керек.
- Сервер жұмысын тексеріңіз.
Дүниежүзілік желідегі қолданба
Apach негізінен World Wide Web-ке статикалық және динамикалық беттерді жіберу үшін қолданылады. Көптеген қолданбалар көмегімен жасалғанApache іске асыру орталары немесе осы сервердің сипаттамаларын пайдаланады. Apach - MySQL және PHP, Perl, Python және Ruby бағдарламалау тілдерімен, соның ішінде Oracle дерекқорын және IBM WebSphere қолданба серверін қоса, танымал LAMP қолданбалы платформасындағы сервер құрамдас бөлігі. 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) деп аталатын өзгертілген нұсқасына негізделген. Көптеген Wikipedia жобалары да Apache серверлерінде жұмыс істейді.