Czym jest apache? Serwer http apache

Apache to potężny serwer, którego nazwa pochodzi od angielskiego zwrotu związanego z nazwą plemienia północnoamerykańskich Indian Apache. Powszechnie nazywany "Apache" wśród rosyjskich użytkowników. Jest to oprogramowanie open source na licencji GPL. jeden z największy Jego zaletą jest cross-platformowy serwer, co oznacza, że może działać na różnych systemach operacyjnych, zachowując doskonałą wydajność.

Od 1996 roku jest to najpopularniejszy serwer na świecie, ze względu na swoją stabilność i bezpieczeństwo. "Apache jest rozwijany przez społeczność programistów kierowaną przez Apache Software Foundation.

Historia Apaczów

Historia Apaczów

Marzec 1989 Tim Berners Lee, angielski naukowiec pracujący w CERN w Szwajcarii, zaproponował nowy sposób zarządzania ogromną ilością informacji w projektach CERN-u. W tamtym czasie nikt nie wiedział, czym jest Apache. Początkowy rozwój sieci dokumentów z hiperłączami, jak nazwał ją w 1965 roku Ted Nelson, doprowadził do powstania WWW, pierwszego oprogramowanie, który został wydany w listopadzie 1990 roku jako World Wide Web, z przeglądarką internetową, GUI i edytorem WYSIWYG. Dwa lata później na liście serwerów WWW było tylko około trzydziestu pozycji, w tym HTTPs NCSA.

Prawdziwa historia Apache`a zaczyna się w marcu 1995 roku wraz z wydaniem Apache`a 0.2 w oparciu o serwer NCSA HTTPD 1.3. Wielu użytkowników zastanawia się czym jest Apache dzisiaj, a czym było oprogramowanie w pierwszych miesiącach jego istnienia. To był tylko zestaw poprawek zastosowanych na serwerze NCSA. Następnie Robert Tau wydał Shambhala 0.1 z API dla modułów, które okazało się bardzo udane.

Główne kamienie milowe to pełna zgodność ze standardem HTTP 1.1, włączony w kwietniu 1997 r. w wersji 1.2. Wersja ta obejmowała już platformę Windows NT, która w lipcu 1997 r. Łączenie plików konfiguracyjnych zostało zaimplementowane w wydaniu 1.3.3.

Grupa Apache jest odpowiedzialna za ewolucję serwerów internetowych i specyficzne rozwiązania rozwojowe. Tę grupę należy odróżnić od core developerów - grupa Core. Dobrowolny charakter większości deweloperów sprawia, że nie jest prawdopodobne, aby wszyscy byli aktywni w Apache w tym samym czasie, więc grupa podstawowa jest odpowiedzialna za utrzymanie wszystkiego w ruchu. Ogólnie rzecz biorąc, decyzje, które mają być podjęte przez deweloperów, należą do jądra i są ograniczone do głosowania, aby włączyć kod. Z drugiej strony, zazwyczaj mają dostęp do repozytorium CVS, więc są strażnikami kodu, zapewniając jego poprawność i jakość.

Minimalne wymagania i świadczenia

Apache jest powszechnie akceptowany w sieci i jest najczęściej używanym serwerem HTTP od 1996 roku. Największy udział w rynku osiągnął w 2005 roku, kiedy to był używany na 70% stron internetowych na całym świecie. Jego udział w rynku w ostatnich latach spadł. Co ciekawe, w przypadku Apache, spadek ten nie świadczy o niepopularności i degradacji technologii.

Minimalne wymagania dotyczące eksploatacji:

  1. Procesor Pentium.
  2. RAM - 64 MB.
  3. Systemy operacyjne Microsoft Windows, GNU/Linux.
  4. Rozmiar instalacji-50MB.

Zalety:

  1. Konstrukcja modułowa.
  2. Otwarte źródło.
  3. Projektowanie wieloplatformowe.
  4. Rozciągliwość.
  5. Popularność - łatwość uzyskania pomocy i wsparcia.

Architektura serwera

Architektura serwera

Modułowy serwer Apache składa się z części głównej i różnych modułów, które zapewniają większość podstawowych funkcji. Niektóre z tych modułów to:

  1. mod_ssl - bezpieczna komunikacja za pomocą protokołu TLS;
  2. mod_rewrite - nadpisywanie adresów, powszechnie używane do przekształcania stron dynamicznych takich jak php w strony statyczne, aby oszukać wyszukiwarki co do miejsca ich powstania;
  3. mod_dav - obsługa protokołu WebDAV (RFC 2518);
  4. mod_deflate - algorytm kompresji jest przezroczysty w momencie wysyłania treści do klienta;
  5. mod_auth_ldap - pozwala użytkownikom na uwierzytelnianie się za pomocą serwera LDAP;
  6. mod_proxy_ajp - łącznik do łączenia z Jakarta Tomcat dynamicznych stron w Javie (serwletów i JSP).

Serwer bazowy może być rozbudowany o zewnętrzne moduły, wśród których:

  • mod_cband - zarządzanie ruchem i ograniczanie pasma;
  • mod_perl - dynamiczny w języku Perl;
  • mod_php - dynamiczny w PHP;
  • mod_python - dynamiczny w języku Python;
  • mod_rexx - dynamiczny w REXX i obiekcie REXX;
  • mod_ruby - dynamiczny w języku Ruby;
  • mod asp dot net - dynamic w Microsoft.NET;
  • mod_mono - dynamiczny w mono;
  • mod_security - filtrowanie na poziomie aplikacji dla bezpieczeństwa.

Konfiguracja i bezpieczeństwo

Konfiguracja i bezpieczeństwo

Aby zrozumieć Apache w świetle bezpieczeństwa, musimy przyjrzeć się jego konfiguracji. Większość konfiguracji odbywa się w apache2.conf i httpd.conf, w zależności od systemu, na którym działa oprogramowanie. Każda zmiana w tym pliku wymaga ponownego uruchomienia serwera lub ponownego wymuszenia odczytu.

Licencja oprogramowania, na której rozpowszechniane jest bazowe oprogramowanie Apache, jest charakterystyczną częścią historii serwera HTTP Apache i społeczności open source. Licencja pozwala na dystrybucję zarówno produktów open source, jak i zamkniętych.

Fundacja Wolnego Oprogramowania nie uważa Licencji Apache za zgodną z Powszechną Licencją Publiczną GNU (GPL) w wersji 2, w której oprogramowanie jest licencjonowane, a nie zintegrowane z oprogramowaniem. Należy to wziąć pod uwagę przed jak się ustawić Serwer WWW Apache rozpowszechniany na licencji GPL. Jednakże, wersja 3 GPL zawiera postanowienie, które pozwala jej być kompatybilną z licencjami zawierającymi klauzule o odszkodowaniach patentowych.

Większość znalezionych i naprawionych luk w zabezpieczeniach może być wykorzystana tylko przez lokalnych użytkowników, a nie zdalnie. Jednak niektóre z nich w pewnych sytuacjach działają zdalnie. Albo jeśli są one wykorzystywane przez złośliwych lokalnych użytkowników do łamania umów o wspólnym hostingu, używając PHP jako modułu darmowego serwera WWW Apache.

Sprawdzenie, czy Apache działa

Sprawdzanie Apache

Aby upewnić się, że Apache działa poprawnie, otwieramy przeglądarkę internetową i wpisujemy następujący adres: http: // localhost. Następnie naciśnij Enter, pojawi się biała strona z komunikatem "It`s working", co jest dowodem na to, że serwer internetowy działa prawidłowo.

"Apache" pozwala na tworzenie specjalnych konfiguracji, które można dostosować do własnych potrzeb. Aby to zrobić, zlokalizuj plik http.conf w C: appserv Apache2.2 konf. Poprzyj to, aby uniknąć błędów następnie otwórz go w dowolnym edytorze i zmień następujące linie.

Aby to zrobić poprawnie, musisz dobrze znać pracownika Apache, ponieważ wszelkie zmiany, które wprowadzisz, będą miały wpływ na wydajność i uruchamianie Apache`a. Najnowsze zalecenia spowodują, że serwer zostanie zainstalowany na. Będzie on działał w podstawowej konfiguracji, która pozwala na ładowanie stron lub aplikacji sieciowych do Internetu.

Zarządzanie informacjami

Zarządzanie informacją

Apache jest najczęściej używanym serwerem WWW, liderem z największą liczbą instalacji na świecie, znacznie wyprzedzając inne rozwiązania, takie jak Microsoft Internet Information Server (IIS). Jest open-source, ponieważ jest wieloplatformowy, z wersjami dla wszystkich głównych systemy operacyjne, Bardzo niezawodny i wyróżniający się bezpieczeństwem i wydajnością.

Komputer, na którym działa to oprogramowanie, otrzymuje tę samą nazwę. Jest to kluczowe, ponieważ jest odpowiedzialne za odbieranie żądań stron od odwiedzających, którzy wchodzą na stronę i zarządzanie ich dostarczaniem lub odrzucaniem zgodnie z obowiązującą polityką bezpieczeństwa. Choć proces ten może wydawać się prosty, obejmuje wiele aspektów i funkcji, które muszą zostać zrealizowane:

  1. Efektywność zapytań.
  2. Duża liczba żądań HTTP, w tym wielozadaniowość, może pozostawić usługę zwiniętą.
  3. Ograniczanie dostępu do plików, zarządzanie uwierzytelnianiem użytkowników lub filtrowanie żądań według ich pochodzenia.
  4. Obsługa błędów na stronach z informacjami o odwiedzających i przekierowaniami do predefiniowanych stron.
  5. Zarządzanie przekazywanymi informacjami zgodnie z ich formatem i odpowiednie informowanie przeglądarki żądającej określonego zasobu.
  6. Zarządzanie dziennikami do przechowywania otrzymane żądania, występujące błędy i ogólnie wszystkie informacje, które są rejestrowane i analizowane w celu uzyskania statystyk dotyczących dostępu do strony.

"Apache pozwala skonfigurować hosting współdzielony w oparciu o adresy IP lub nazwy, czyli posiadanie wielu stron internetowych na jednym komputerze.

Plik apache2.conf

Niewątpliwie apache2.conf jest najważniejszym plikiem, ponieważ definiuje ogólne zachowanie stron internetowych, a także jest odpowiedzialny za dostęp do różnych modułów, które rozszerzają funkcjonalność serwera.

Znajduje się on w /etc /apache2, a ponieważ jest to plik tekstowy, można go łatwo edytować za pomocą edytora tekstu. Właściwości pliku konfiguracyjnego - globalne zmienne serwera i funkcjonalność rozszerzeń.

Zmienne globalne serwera to zmienne, które decydują o całościowym działaniu:

  1. Tabela dyrektyw Apache. Nazwa serwera jest określona przez zmienną ServerName, więc każde przekierowanie lub link, który istnieje w dokumentach HTML działa dobrze. Większość zmiennych konfiguracyjnych jest rozmieszczona w innych małych plikach przechowywanych w mods-available.
  2. .htaccess to ukryty plik tekstowy, który pozwala skonfigurować serwer.
  3. "apache" - określony katalog bez konieczności zmiany głównego pliku konfiguracyjnego apache2.conf. Kiedy klient sieciowy zażąda pliku od serwera, będzie szukał w katalogu głównym w podkatalogu zawierającym żądany plik dla .htaccess, i uwzględnia zawarte w nim dyrektywy przed wykonaniem żądania.

Zasada .htaccess:

  1. Wyłącza wyliczanie plików w.
  2. Przekierowuje ruch internetowy.
  3. Konfiguruje strony błędów.
  4. Ogranicza dostęp do niektórych plików.
  5. Odmawia dostępu do określonych adresów IP lub zakresów IP.
  6. Rozszerza funkcjonalność, co wiąże się z wywołaniami do innych modułów i plików konfiguracyjnych. Wszystkie dyrektywy związane z tą klauzulą będą poprzedzone słowem "Włącz".

Konfiguracja serwera WWW Apache

Instalacja serwera WWW Apache

"Apache został pierwotnie zaprojektowany do pracy z technologią PHP, ale może również pracować z .NET, dzięki czemu cieszy się większym powodzeniem niż IIS Microsoftu, który jest współpracownikiem serwerów korzystających z IIS i zapewnia pełną obsługę PHP bez konieczności zmian konfiguracyjnych.

Aby zainstalować i uruchomić serwer WWW, należy go najpierw pobrać z oficjalnej strony internetowej. zawsze znajdzie najnowszą wersję dostępnego oprogramowania i sprawdzi, czy zostanie ono zidentyfikowane jako Win32 Binary, w tym OpenSSL.

Wersja ta posiada wbudowany system instalacji i ochrony danych. Po wybraniu jest on pobierany do komputera. Kliknij dwukrotnie na ikonę pliku, aby rozpocząć proces, który jest prosty, ponieważ towarzyszy mu asystent.

Jedno z pierwszych okien, w którym podawane są niezbędne informacje, aby serwer WWW mógł połączyć się z siecią. Tam użytkownik wypełnia niewielki formularz, dodając nazwę domeny sieciowej, nazwę serwera oraz adres e-mail administratora. Dla pierwszych dwóch opcji wybierz localhost.

Następnie pojawi się okno instalacyjne pokazujące wszystkie dostępne komponenty. Zaznacz je wszystkie i sprawdź czy folder c: appserv Apache2 jest obecny.2. Konfiguracja serwera WWW Apache.

Web-Monitor na pasku zadań

Po zainstalowaniu Apache upewnij się, że zostało to wykonane poprawnie. Odbywa się to poprzez przejście do menu "Start" i wybranie opcji "Uruchom". Pojawi się okno popup, w którym wpisują cmd, system wyskakuje. Aby upewnić się, że użytkownik działa jako administrator, kliknij prawym przyciskiem myszy na okno i wybierz "Uruchom jako administrator".

Algorytm instalacji:

  1. Znajdź w konsoli Windows folder Apache bin wpisując w konsoli następujące zdanie - c: appserv Apache2.2? w.
  2. Po wpisaniu tej informacji należy wcisnąć Enter i komponent systemowy będzie wyglądał tak - C: appserv Apache2.2? W>.
  3. Będąc w folderze bin, wpisz http: .exe -k install i naciśnij Enter.
  4. Komunikat podobny do ".Apacz 2.2: Usługa już zainstalowana". Ten komunikat sprawdzi, czy Apache został pomyślnie zainstalowany.

Jednym z najbardziej efektywnych sposobów sprawdzenia czy Apache działa poprawnie jest ustawienie czy monitor aplikacji. Można to zobaczyć na pasku zadań. Jeśli jest nieaktywny, aktywuj go, przechodząc do menu Start, Wszystkie programy i Apache http Server 2.2., kliknij na Monitor Apache Server i aktywuj go.

Monitor jest przydatny, ponieważ pozwala na wygodne zatrzymywanie, zawieszanie i aktywowanie serwera, bez przechodzenia do okna konsoli, wystarczy kliknąć ikonę na pasku zadań, aby otworzyć.

Porady dotyczące instalacji w systemie Linux

Porady dotyczące instalacji w systemie Linux

Jeśli użytkownik ma stronę internetową i potrzebuje platforma dla niego hostingu, możesz skorzystać z usług jednego z dostawców usług hostingowych lub spróbować hostować swoją stronę samodzielnie.

Algorytm instalacji:

  1. Pobierz najnowszą stabilną wersję Apache.
  2. Pobierz pliki źródłowe odpowiadające systemowi.
  3. Wyciągnij pliki oprogramowania.
  4. Po pobraniu plików trzeba będzie je rozpakować:gunzip -d httpd-2_0_NN.tar.gz; tar xvf httpd-2_0_NN.tar.
  5. To tworzy nowy katalog w bieżącym katalogu z plikami źródłowymi.
  6. Gdy pliki się pojawią, powiedz maszynie, gdzie ma znaleźć wszystkie źródła. Najłatwiej jest przyjąć wszystkie wartości domyślne i po prostu wpisać: ./konfiguracja.
  7. Skonfiguruj Apache, zakładając, że nie było problemów z instalacją i budową. Konfigurowalne przez użytkownika, co jest równoznaczne z edycją pliku httpd.conf. Zwykle edytuje się to za pomocą edytora tekstowego - vi PREFIX /conf/httpd.conf. Aby dokonać jakichkolwiek zmian, musisz być użytkownikiem root.
  8. Sprawdzanie wydajności serwera.

Zastosowanie w sieci WWW

Używane w sieci World Wide Web

Apach jest używany w głównie dla Wysyłanie statycznych i dynamicznych stron do sieci World Wide Web. Wiele aplikacji zostało zaprojektowanych z myślą o implementacji Apache`a lub będzie wykorzystywać właściwości serwera Apache. Apach jest składnikiem serwera w popularnej platformie aplikacyjnej LAMP, wraz z języki programowania MySQL i PHP, Perl , Python i Ruby, w tym baza danych Oracle i serwer aplikacji IBM WebSphere. Mac OS X integruje go w ramach własnego serwera WWW i wsparcia dla aplikacji WebObjects.

Apache jest używany do wielu innych zadań, w których zawartość musi być dostępna bezpiecznie i solidny sposób. Na przykład, podczas udostępniania plików z komputer osobisty w Internecie. Użytkownik, który ma zainstalowany Apache na swoim pulpicie może umieszczać pliki dowolnie w korzeniu dokumentów, skąd mogą stać się współdzielone.

Programiści aplikacji internetowych czasami używają lokalnej wersji Apache`a do podglądu i testowania kodu podczas rozwoju. Microsoft Internet Information Services (IIS) jest głównym konkurentem Apache`a, obok serwera WWW Sun Java System firmy Sun Microsystems i wielu innych aplikacji, takich jak Zeus Web-Server.

Niektóre z największych stron internetowych na świecie działają na Apache`u. Interfejs zewnętrzny wyszukiwarka Google bazuje na jego zmodyfikowanej wersji, zwanej Google Web Server (GWS). Wiele projektów "Wikipedie" działają również na serwerach Apache.

Artykuły na ten temat