Protokół HTTP/1.1

Protokół HTTP/1.1 jest opisany w dokumencie RFC 2616.

Praktycznie wszystkie strony WWW są przesyłane za pomocą protokołu HTTP. Poza samymi danymi, są też przesyłane nagłówki, które zawierają różne informacje o pliku — czy dany plik istnieje, jaki ma typ (strona, grafika, animacja, itp.), jak długo może być przechowywany w cache, itd.

Możesz spotkać się z protokołem HTTPS. To oznacza, że strona korzysta z połączeń szyfrowanych.

Jak to działa?

Podstawa HTTP jest bardzo prosta — klient (np. przeglądarka) wysyła żądanie (ang. request) do serwera i dostaje od niego odpowiedź (ang. response).

Żądanie zawiera ścieżkę do pliku, wersję HTTP i oraz opcjonalnie informacje o przeglądarce i preferowanej wersji pliku (typ, język).

 GET /index.html HTTP/1.1
 Host: example.com
 User-Agent: Przegladarka/1.0
 Accept: text/html, application/xhtml+xml
 Accept-Language: pl,x-klingon

Na podstawie tych informacji serwer wysyła odpowiedź, która może być plikiem wraz z informacjami o nim lub informacją, że plik nie istnieje albo ma być pobrany pod innym adresem.

 HTTP/1.1 200 OK
 Server: Jakis/1.0
 Date: Wed, 09 Feb 1994 22:23:32 GMT
 Content-Type: application/xhtml+xml

Bezstanowość HTTP da się obejść za pomocą cookies

Protokół HTTP jest bezstanowy. Oznacza to, że każde żądanie jest traktowane zupełnie osobno, niezależnie od pozostałych. Dzięki temu przeglądarka może od razu żądać plików, bez żadnego „przywitania” się z serwerem, a serwer nie musi cały czas utrzymywać połączenia z przeglądarką.

Jak „używać” HTTP?

W przypadku zwykłych plików (tzw. stron statycznych) wszystkie niezbędne nagłówki potrafi ustawić serwer WWW. Natomiast ustawianie odpowiednich nagłówków jest przydatne do „tuningu” cache, przekierowań oraz gdy używa się skryptów po stronie serwera (np. PHP, Perl).

PHP

rozwinąć

Do ustawiania nagłówków i statusów HTTP służy funkcja header().

Apache

Zobacz mod_headers, mod_expires oraz mod_rewrite. Do ustawiania nagłówka Content-Type można użyć AddType typ_MIME rozszerzenie. Rozszerzenie musi zawierać pierwszą kropkę. Na przykład:

 AddType application/xhtml+xml .xhtml


Zmodyfikowano: 14.09.2011, 10:32
submit