Apache

    Apache

    Apache


    Apache

    Apache veb serverlər üçün çox platformalı, pulsuz və açıq mənbə proqramdır. 1995-ci ildə bazara çıxdı və gələn ilin yazından bu günə qədər İnternetdə ən populyar server proqramlarından biri olmuşdur. Bu cür proqram təminatı veb layihələrin ümumi sayının təxminən 46%-də istifadə olunur. Apache əvvəlcə başqa bir tanınmış server proqramı olan NCSA HTTPd 1.3-ün təkmilləşdirilmiş versiyası kimi hazırlanmışdır. Layihə müstəqil proqramçılar icmasının səyləri ilə hazırlanır. Apache-yə yüksək tələbatın səbəbləri arasında onun etibarlılığı, idarəetmə asanlığı, modulluq, uyğunlaşma və miqyaslılıq daxildir. Bu proqramın öz rəsmi internet saytı var - httpd.apache.org. Bununla belə, Apache-nin də zəif tərəfləri var. Bunlara bir çox konfiqurasiya faylları və təhlükəsizliyi azaldan mövcud xüsusiyyətlər və trafik artımı zamanı performansın nəzərəçarpacaq dərəcədə azalması daxildir.


    Apache veb server

    Apache veb serverlər üçün çox platformalı, pulsuz və açıq mənbə proqramdır. 1995-ci ildə bazara çıxdı və gələn ilin yazından bu günə qədər İnternetdə ən populyar server proqramlarından biri olmuşdur. Bu cür proqram təminatı veb layihələrin ümumi sayının təxminən 46%-də istifadə olunur. Apache əvvəlcə başqa bir tanınmış server proqramı olan NCSA HTTPd 1.3-ün təkmilləşdirilmiş versiyası kimi hazırlanmışdır. Layihə müstəqil proqramçılar icmasının səyləri ilə hazırlanır. Apache-yə yüksək tələbatın səbəbləri arasında onun etibarlılığı, idarəetmə asanlığı, modulluq, uyğunlaşma və miqyaslılıq daxildir. Bu proqramın öz rəsmi internet saytı var - httpd.apache.org. Bununla belə, Apache-nin də zəif tərəfləri var. Bunlara bir çox konfiqurasiya faylları və təhlükəsizliyi azaldan mövcud xüsusiyyətlər və trafik artımı zamanı performansın nəzərəçarpacaq dərəcədə azalması daxildir.


    Apache Məqsədi

    Apache-nin nə olduğunu başa düşərək, onun tətbiqinin xüsusiyyətlərini daha ətraflı öyrənə və proqramın nə etdiyini başa düşə bilərsiniz. Bu proqram serverlərdə yerləşdirilən məzmun üçün sorğuları emal edir. Onun tətbiqinin dərslik nümunəsi veb-sayt istifadəçilərinin sorğularının işlənməsidir. Onlar veb-sayta daxil olmaq və onun səhifələrinə baxmaq üçün brauzerindən istifadə edirlər. İstifadəçilər məzmun üzərində hərəkətlər etdikdə (linkə klikləmək, menyuda naviqasiya etmək və s.) brauzer proqramı müvafiq sorğu yaradır və onu server kompüterinə ötürür. Apache onu təhlil edir, tələb olunan məzmunu tapır, cavabı HTML-də yazır və müştərinin brauzerinə göndərir. O, öz növbəsində, yaranan kodu vizual olaraq qəbul edilən səhifəyə çevirir.

    Apache strukturu

    Bu server proqramına C nüvəsi və onun imkanlarını artıran funksional modullar daxildir. Bu əlavə blokların seçimi serverdə olan xüsusi məzmundan asılıdır. Konfiqurasiya fayllarını dəyişdirərək, aşağıdakı nüvə xüsusiyyətlərini konfiqurasiya edə bilərsiniz:

    • httpd.conf – server səviyyələri;
    • extra/httpd-vhosts.conf – virtual host;
    • .htaccess – kataloq səviyyələri. Onlar bir veb serveri mərkəzləşdirilməmiş şəkildə konfiqurasiya etməyə imkan verir. Tez şərh olunan bu fayllar server kompüterinin konfiqurasiyasını yenidən yükləmədən dəyişir. Həmçinin, htaccess, administrator hüququ olmayan müəyyən istifadəçi qrupları üçün İnternet proqramlarının bəzi xüsusiyyətlərini idarə etməyə imkan verir.

    Aşağıdakı üsullardan istifadə edərək modulların konfiqurasiyasını dəyişə bilərsiniz:

    • öz modul konfiqurasiya fayllarınızı dəyişdirmək;
    • əməliyyat sisteminin konfiqurasiya xüsusiyyətlərinin dəyişdirilməsi;
    • komanda xətti vasitəsilə dəyişikliklər etmək.

    Çox emal modulları

    İstifadəçi sorğularının təhlili bir sıra modullardan istifadə etməklə həyata keçirilir:

    • mpm_prefork – hər istifadəçi sorğusu üçün 1 mövzu yaradır;
    • mpm_worker - hər biri yalnız 1 əlaqəni təhlil edən bir neçə mövzu yaradır (artan miqyaslılıqla xarakterizə olunur);
    • mpm_event – ​​əvvəlkinə bənzəyir, lakin canlı əlaqələri emal etmək üçün uyğunlaşdırılmışdır.

    Müəyyən modulun istifadəsi veb layihənin parametrlərindən və istifadəçi auditoriyasından asılıdır.

    Əlavə modullar

    Apache veb serverinin funksionallığı modullarla artır - onların ümumi sayı 500-ü ötür. Onların bəziləri proqram təminatının yaradıcıları tərəfindən, digərləri isə üçüncü tərəf tərtibatçıları tərəfindən yaradılmışdır. Proqram təminatının tərtibi zamanı nüvəni və modulları qurmaq mümkün olsa da, sonuncunu dinamik şəkildə daxil etmək də mümkündür. Modullar aşağıdakı problemləri həll etmək üçün hazırlanmışdır:

    • əlavə proqramlaşdırma dilləri üçün dəstək;
    • funksiyaların sayını artırmaq;
    • əsas funksiyaların modifikasiyası, səhvlərin düzəldilməsi;
    • təhlükəsizliyin artırılması.

    Müxtəlif dillərlə inteqrasiya CGI və FastCGI modullarından istifadə etməklə həyata keçirilir. Ən populyar dillər, xüsusən apache_asp, mod_php və s. üçün ixtisaslaşmış modullar hazırlanmışdır.

    URL idarə edilməsi və mod_rewrite-in digər xüsusiyyətləri

    Bu, URL-ləri süzmək və dəyişdirmək üçün istifadə edilə bilən effektiv vasitədir. O, ünvanın müəyyən hissələrini, xüsusən PHP-də işlənmiş saytlarda .php fayl uzantısını gizlətmək üçün istifadə olunur. Modul .htaccess fayllarına direktivləri daxil etməklə idarə oluna bilər. Məsələn, .aspx fayl uzantılarını .php ilə əvəz etmək üçün aşağıdakıları yazmalısınız:

    RewriteEngine Aktivdir

    RewriteBase /

    RewriteRule ^(.*)\.php$ $1.aspx {QSA,L]

    Nümunədən aydın olur ki, direktivlər adi simvollardan və işarə konstruksiyalarından istifadə etməklə yaradılır: məsələn, “^” simvolu xəttin başlanğıcını, “(.*)” girişi istənilən simvolların qeyri-məhdud sayını bildirir. Yuxarıdakı qayda saytın ASP.NET texnologiyasından istifadə edərək yaradıldığını gizlətməyə kömək edir. Fayl adının özü dəyişmir. Apache qeydi real vaxt rejimində təhlil edir, .php-ni .aspx ilə əvəz edir və müvafiq skript faylını açır. Bu modulun digər funksiyalarına aşağıdakılar daxildir:

    • artan təhlükəsizlik üçün əvvəlcədən filtrasiya;
    • sorğuların yönləndirilməsi ilə fayl sisteminin keşində məlumatın saxlanması;
    • Bəzi faylları yükləmək üçün məhdudiyyətlər.

    Virtual Hostlar

    Bu mexanizm bir fiziki serverdə (bir IP ünvanı ilə) bir neçə fərqli saytı dəstəkləmək üçün lazımdır. Onun əsas funksionallığına aşağıdakılar daxildir:

    • modulların müstəqil konfiqurasiyası;
    • xüsusi sayt məzmununa girişə nəzarət etmək;
    • hər bir virtual host üçün httpd prosesinin müstəqil işə salınması, öz bələdçi və istifadəçi interfeysini təmin edir;
    • sistem resurslarının və trafikin istehlakını idarə etmək.

    Bu blok tez-tez hostinq xidmətləri göstərmək üçün istifadə olunur.

    Apache-nin Nginx ilə birləşdirilməsi

    Apache ilə yanaşı, bir sıra digər ümumi server proqram təminatı da istifadə olunur. Onun əsas analoqu və rəqabət aparan məhsulu 2004-cü ildə c10k probleminin həlli üçün proqram təminatı kimi bazara buraxılmış Nginx-dir (o zaman eyni vaxtda çoxsaylı sorğuların işlənməsi zamanı müəyyən çətinliklər var idi). Nginx, yeni sorğuların tək yivli işlənməsinə imkan verən hadisəyə əsaslanan dizayna malikdir. Bu proqram təminatı statik məzmunlu yüksək işləmə sürəti (burada Apache-dən əhəmiyyətli dərəcədə üstündür) ilə seçilir. Bu spesifiklik sayəsində siz hər iki proqram paketini birlikdə effektiv şəkildə istifadə edə bilərsiniz. Burada Nginx serverə sorğuların filtrlənməsi, statik məzmun üçün sorğuların müstəqil təhlili və qalanlarının Apache-yə yönləndirilməsi üçün məsuliyyət daşıyır.


    Tövsiyə edirik × +

    Yorumlar

    Bu blogdaki popüler yayınlar

    Yuxuda qonaqliq gormek nedir

    Yuxuda ezgil yemek nedir

    Yuxuda ev yandigini gormek nedir