HTTP palēlinātās piezīmes

Computer Kas ir HTTP visi apmēram zina. Ja nezina, tad te var palasīties:
HTTP – Vikipēdija
Hypertext Transfer Protocol – Wikipedia, the free encyclopedia
RFC 2616 Hypertext Transfer Protocol — HTTP/1.1

Tālāk daži sīkumi.

Tātad es savā pārlūkprogrammā ierakstu delfi.lv

delfi.lv

Pirms es vēl nospiežu podziņu GO, pārlūkprogramma pati manam delfi.lv sākumā piekabina http:// un beigās /

Iznāk šādi: http://delfi.lv/

http:// norāda, kāds protokols tiks izmantots, jo var būt citi, kā ftp:// file:// utml.
Mana pārlūkprogramma tātad noklusēti izmanto HTTP, ja jau to kabina klāt.
Serverim (hostname) galā piekabina / , drošvien, lai nerastos problēmas ar to, kāds dokuments tiks pieprasīts, jo var būt visādi brīnumi:
http://www.delfi.lv=
http://www.delfi.lv?
http://www.delfi.lv
utml.
Tā teikt pārlūkprogramma cenšas labot manas kļūdas manā vietā, bet diez vai tā vienmēr vajadzētu darīt.

Teorētiski aiz delfi.lv būtu jābūt minētam arī 80 portam delfi.lv:80, bet, kā es saprotu, pārlūkprogramma apslēpj to :80, jo lielākā daļa HTTP serveru pēc noklusējuma izmanto 80 portu un man to rādīt neesot būtiski.
Bet pārlūkprogramma tik un tā pieprasījumu veido uz šo 80 portu.

Patiesībā pārlūkprogramma saprot arī šādu pieprasījumu http://delfi.lv:80/ , jo dažreiz (reti) serveri izmanto kādu citu portu.

Ka tas tā ir, var pārbaudīt šādi:

1. http://www.delfi.lv:80/
2. http://www.delfi.lv:81/

Otrais nedarbosies.

Piemēram Opera to 80 neņemtu nost un smuki turpina darbodies ar visu :80 galā un es pat vēlāk no tā :80 vairs netiku vaļā. Tas man nepatīk. Toties Firefox, ja serveris ir stulbs un neiet bez www un nesaņem no servera nekādus rīkojumus, www mēģina kabināt pats klāt. Opera, man par laimi, tā nedara. Piemērs: http://latnet.lv/

Opera
Opera latnet.lv

Tas lai paliek.

Tātad, es ar savu Firefox pārlūkprogrammu paprasu:
Iedod ka man delfi.lv.
Pārlūkprogramma saka – zinu šitādus, iedošu, ka tev pareizi http://delfi.lv/
Nosūta DNS serverim jautājumu, a kur atrodas delfi.lv? Saņem atbildi, ka tur un tur, uz tās un tās IP.

Labi, ja tur, tad turpinu (pārlūkprogramma) sūtīt pieprasījumu, ko nerādīšu savam pārlūkprogrammas lietotājam, jo viņam tas nešķitīs svarīgi, jo viņš grib redzēt flash reklāmas:

GET / HTTP/1.1
Host: delfi.lv
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.12) Gecko/20080207 Ubuntu/7.10 (gutsy) Firefox/2.0.0.12
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

Aptuvens tulkojums: Iedod man noklusēto dokumentu, ko serveris izmanto, kad pieprasa /, izmantojot HTTP 1.1 versiju no delfi.lv servera.
Papildus es to serveri vēlos informēt, ka lietoju (User-Agent) tādu un tādu pārlūkprogrammu (Firefox…), pārlūkprogramma prot saprast un izmantot visādas foršas lietas (Accept*). Uzgaidīšu.

delfi.lv saņem manu sūtījumu un atbild:

HTTP/1.0 302 Moved Temporarily
Date: Sun, 02 Mar 2008 23:44:22 GMT
Server: Apache
Location: http://www.delfi.lv
Content-Type: text/html; charset=windows-1257
X-Cache: MISS from http://www.delfi.lv
Connection: close

Aptuvens tulkojums: Saņēmu tavu sūtījumu, bet mēs (delfi.lv) bez www neprotam (Ka neprotam, tur nav rakstīts. To es tā piegudroju).

Saņēmu tavu sūtījumu. Atbildu izmantojot HTTP 1.0 versiju.
Pieprasītais dokuments ir pārvietots citur, pārvietots tas ir tur uz pavisam īslaicīgi pārvietots (302 Moved Temporarily. (Uz pavisam būtu 301 Moved Permanently)).
Datums, paraksts.
Pārsūtām tevi uz http://www.delfi.lv
Šim ziņojumam izmantojam HTML (text/html) formātu windows-1257 kodējumā.
Neko mēs te nekešojam (šito es precīzi nezinu).
Aizveram šo savienojumu (jo mēs tak tevi pārsūtīsim).

Šeit es nesaprotu, kādēļ netika lietots Location: http://www.delfi.lv/ ar / beigās.

Labi, mana pārlūkprogramma saņem šo vēstījumu, pieliek beigās to iztrūkstošo / un sūta jaunu pieprasījumu:

GET / HTTP/1.1
Host: http://www.delfi.lv
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.12) Gecko/20080207 Ubuntu/7.10 (gutsy) Firefox/2.0.0.12
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

Tulkojums tāds pats, kā pirmajā pieprasījumā, tikai šoreiz prasām nevis delfi.lv, bet http://www.delfi.lv

http://www.delfi.lv saņem manu jauno pieprasījumu un atbild:

HTTP/1.0 200 OK
Server: Apache/1.3.41 (PLD/Linux)
Content-Type: text/html; charset=windows-1257
Content-Length: 115306
Date: Sun, 02 Mar 2008 23:54:02 GMT
X-Varnish: 2017824833 2017824490
Age: 4
Via: 1.1 varnish
Connection: keep-alive

Te seko HTML dokumenta saturs…

Aptuvenais saīsinātais tulkojums:
Saņēmu tavu sūtījumu. Atbildu izmantojot HTTP 1.0 versiju. Viss ir OK (200 OK).
Mums ir tāds un tāds serveris (tipa paraksts).
izmantojam HTML (text/html) formātu windows-1257 kodējumā.
Šīs datnes, dokumenta satura garums ir 115306 baiti.
Datums (nezinu, no kurienes radās desmit minūšu starpība).
Šāda tāda tev nebūtiska informācija.
Uzgaidi, ja gadījumā mums ar to dokumentu neies ātri.

Saņem HTML dokumenta saturu.

Mana pārlūkprogramma – O, beidzot kaut kāds normāls HTML saturs, ko es tev varu parādīt pārlūkprogrammā.

Tālāk tur seko vēl vairāki turpu šurpu pieprasījumi, lai atsūtītu bildes, reklāmas utml.

www.delfi.lv

Pieprasījumu noskaidrošanai izmantoju Wireshark: Go deep.

Both comments and trackbacks are currently closed.

Komentāri

  • lasītājs  On Marts 3, 2008 at 7:55

    MISS kešošanā nozīmē, ka neatrada nokešotu variantu, ko tev parādīt, rādīs (prasīs) pašu svaigumu.

  • Kaspars Foigts  On Marts 3, 2008 at 7:55

    Moved Temporarily – Īslaicīgi pārvietots.

    X-Cache: MISS from http://www.delfi.lv – Cache servisa identifikators. TB – to varētu novākt, jo šis ir cache servisa softu aprakstošs hederis.

    Connection: keep-alive – pēc šī pieprasījuma savienojums netiks aizvērts, ja vēlies (un vari izmantot vienu savienojumu vairākiem pieprasījumiem), prasi vēl kaut ko (kādu failu, piem.)

  • BlackHalt  On Marts 3, 2008 at 8:09

    Jā tur ir 302 īslaicīgi pārvietots. Saputrojos, jo gribēju pieminēt ari http://www.deals.lv , kur ir šādi:

    HTTP/1.1 301 Moved Permanently
    Location: http://deals.lv/
    Content-Length: 0
    Date: Mon, 03 Mar 2008 00:42:27 GMT
    Server: wWw

  • Valdis  On Marts 3, 2008 at 8:09

    Tik agri un jau ar pētniecību nodarbojaties. Traki jūs esat.

  • Kaspars Foigts  On Marts 3, 2008 at 8:34

    Šit. Par to kešu gan sadirsu. Toč tur ir MISS🙂

%d bloggers like this: