<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://mis.martin-simunek.cz/skins/common/feed.css?301"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://mis.martin-simunek.cz/index.php?action=history&amp;feed=atom&amp;title=Protokol_HTTP</id>
		<title>Protokol HTTP - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://mis.martin-simunek.cz/index.php?action=history&amp;feed=atom&amp;title=Protokol_HTTP"/>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;action=history"/>
		<updated>2026-04-19T02:37:48Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.17.0</generator>

	<entry>
		<id>http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=4097&amp;oldid=prev</id>
		<title>Spravce: Oprava odkazu na #Hlavičky protokolu HTTP.</title>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=4097&amp;oldid=prev"/>
				<updated>2021-01-05T20:21:29Z</updated>
		
		<summary type="html">&lt;p&gt;Oprava odkazu na &lt;a href=&quot;#Hlavi.C4.8Dky_protokolu_HTTP&quot;&gt;#Hlavičky protokolu HTTP&lt;/a&gt;.&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Starší verze&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Verze z 5. 1. 2021, 20:21&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádka 62:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádka 62:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Syntaxe: &amp;lt;code&amp;gt;GET ''složka/soubor'' HTTP/1.1&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Syntaxe: &amp;lt;code&amp;gt;GET ''složka/soubor'' HTTP/1.1&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Jako druhý parametr se uvádí verze protokolu HTTP. Dnes nejběžněji HTTP 1.1.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Jako druhý parametr se uvádí verze protokolu HTTP. Dnes nejběžněji HTTP 1.1.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;minus;&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Na dalších řádcích následují [#Hlavičky protokolu HTTP| hlavičky protokolu HTTP].&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Na dalších řádcích následují &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[&lt;/ins&gt;[#Hlavičky protokolu HTTP| hlavičky protokolu HTTP&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]&lt;/ins&gt;].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Požadavek končí prázdným řádkem.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Požadavek končí prázdným řádkem.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Spravce</name></author>	</entry>

	<entry>
		<id>http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=3705&amp;oldid=prev</id>
		<title>Spravce: Doplněn postup komunikace, hlavičky a metody.</title>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=3705&amp;oldid=prev"/>
				<updated>2020-05-04T11:03:42Z</updated>
		
		<summary type="html">&lt;p&gt;Doplněn postup komunikace, hlavičky a metody.&lt;/p&gt;
&lt;a href=&quot;http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;amp;diff=3705&amp;amp;oldid=3700&quot;&gt;Ukázat změny&lt;/a&gt;</summary>
		<author><name>Spravce</name></author>	</entry>

	<entry>
		<id>http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=3700&amp;oldid=prev</id>
		<title>Spravce: Vytvoření kostry stránky.</title>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Protokol_HTTP&amp;diff=3700&amp;oldid=prev"/>
				<updated>2020-05-04T08:04:05Z</updated>
		
		<summary type="html">&lt;p&gt;Vytvoření kostry stránky.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:VSE]][[Category:Internet]][[Category:CRI]][[Category:Sítě]]&lt;br /&gt;
&lt;br /&gt;
== Protokol HTTP  ==&lt;br /&gt;
* Protokol HTTP popisuje postup klienta a serveru při stahování obsahu webových stránek.&lt;br /&gt;
* Klientem je v&amp;amp;nbsp;tomto případě internetový prohlížeč uživatele, serverem je aplikace Apache, nginx, IIS či jiná, která poskytuje klientům obsah webových stránek.&lt;br /&gt;
&lt;br /&gt;
* Protokol je ''[[Protokol#Stavové a bezestavové protokoly|bezestavový]]''. Nevyužívá tedy služeb relační vrstvy. Každý požadavek se řeší zcela nezávisle na předchozích požadavcích.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Chování klienta a serveru ==&lt;br /&gt;
&lt;br /&gt;
=== Příprava na stažení webové stránky ===&lt;br /&gt;
# Uživatel zadá adresu do adresního řádku prohlížeče.&lt;br /&gt;
# Pro navázání spojení se serverem je třeba získat IP adresu serveru.&lt;br /&gt;
# Prohlížeč proto osloví DNS server&lt;br /&gt;
:* DNS server přeloží textovou adresu na IP adresu (například '''www.oauh.cz =&amp;gt; 212.111.4.142''').&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Poznamka&amp;quot;&amp;gt;Tato komunikace ještě přímo nesouvisí s protokolem HTTP, využíváme zde [[Protokol DNS]].&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HTTP: Odeslání příkazu a&amp;amp;nbsp;přijetí odpovědi ===&lt;br /&gt;
# Prohlížeč naváže spojení se servrem pomocí IP adresy (využije služeb protokolu TCP).&lt;br /&gt;
# =&amp;gt; prohlížeč pošle příkaz '''GET nazev_stranky.htm'''&lt;br /&gt;
#* K požadavku může připojit ještě další informace: ''hlavičky protokolu HTTP''.&lt;br /&gt;
:; &amp;lt;= server najde soubor a pošle zpět obsah souboru (HTML kód)&lt;br /&gt;
# Prohlížeč vykreslí stránku podle popisu v jazyce HTML&lt;br /&gt;
&lt;br /&gt;
=== Zpracování požadavku: dynamické stránky ===&lt;br /&gt;
* Pokud se jedná o statickou webovou stránku, server pouze vyhledá správný soubor a&amp;amp;nbsp;odešle jeho obsah.&lt;br /&gt;
* Pokud jsou ale v&amp;amp;nbsp;obsahu stránky použity skriptovací jazyky PHP, ASP.net, Python či další, musí server nejprve zpracovat veškeré příkazy a&amp;amp;nbsp;teprve výsledný kód se odešle jako odpověď.&lt;br /&gt;
* Toto se netýká skriptů zpracovávaných na straně klienta (v&amp;amp;nbsp;prohlížeči) &amp;amp;mdash; dnes typicky JavaScript. Tyto skripty se odesílají spolu s&amp;amp;nbsp;kódem stránky a&amp;amp;nbsp;jejich zpracování provádí až prohlížeč na počítači klienta.&lt;br /&gt;
&lt;br /&gt;
=== HTTP: Odpověď serveru ===&lt;br /&gt;
# Přijetím odpovědi komunikace končí.&lt;br /&gt;
# Protože je protokol bezstavový, může server zapomenout veškeré informace. Příští spojení bude zcela nezávislé na tomto.&lt;br /&gt;
&lt;br /&gt;
=== Obrázky a jiné objekty ve stránkách ===&lt;br /&gt;
* Pokud je v popisu stránky obrázek či jiný vložený objekt, prohlížeč naváže nové spojení a vyžádá si stažení souboru s obrázkem (či jiným objektem).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Poznamka&amp;quot;&amp;gt;Protokol HTTP verze 1.1 umožňuje po ukončení komunikace (po přijetí odpovědi) ihned poslat další požadavek bez ukončení spojení. Server tedy spojení neuzavírá ihned po odeslání odpovědi, ale až s&amp;amp;nbsp;nějakým zpožděním.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Příkazy HTTP ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Příkaz GET ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Další příkazy ===&lt;br /&gt;
* Kromě stahování obsahu webových stránek dnes lze protokol HTTP využít i&amp;amp;nbsp;pro další účely včetně modifikace obsahu webových stránek.&lt;br /&gt;
* K&amp;amp;nbsp;těmto účelům slouží další příkazy:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;code&amp;gt;POST&amp;lt;/code&amp;gt;&lt;br /&gt;
; &amp;lt;code&amp;gt;PUT&amp;lt;/code&amp;gt;&lt;br /&gt;
; &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Hlavičky protokolu HTTP ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Verze protokolu HTTP ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Úkol: Prohlédněte si komunikaci ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Priklad&amp;quot;&amp;gt;&lt;br /&gt;
; Úkol: Prohlédněte si komunikaci mezi klientem a&amp;amp;nbsp;serverem&lt;br /&gt;
# Najděte stránku [https://websniffer.cc/ WebSniffer.cc].&lt;br /&gt;
# Zadejte nějakou URL adresu do okénka.&lt;br /&gt;
# Web sniffer vám vypíše kompletní komunikaci mezi vaším prohlížečem a&amp;amp;nbsp;serverem.&lt;br /&gt;
# Zobrazen máte požadavek s&amp;amp;nbsp;odeslanými hlavičkami i&amp;amp;nbsp;přijatou odpověď včetně hlaviček, které poskytuje server.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Úkol: Odeslání požadavku ručně ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Priklad&amp;quot;&amp;gt;'''Úkol: Vyzkoušejte si ručně, co musí udělat prohlížeč!'''&lt;br /&gt;
* Vyberte si web, ke kterému se zkusíte připojit. (V&amp;amp;nbsp;našem příkladu píšeme &amp;lt;code&amp;gt;''www.oauh.cz''&amp;lt;/code&amp;gt;. Vy napište skutečnou URL adresu bez HTTP.&lt;br /&gt;
* Do poznámkového bloku (či jiného čistě textového editoru) si připravte požadavek:&lt;br /&gt;
 GET / HTTP 1.1&lt;br /&gt;
 Host: ''www.oauh.cz''&lt;br /&gt;
 ''&amp;lt;prázdný řádek&amp;gt;''&lt;br /&gt;
* Připravený požadavek (včetně prázdného řádku na konci) zkopírujte do schránky.&lt;br /&gt;
* Spusťte program PuTTY a&amp;amp;nbsp;vyplňte údaje pro připojení k&amp;amp;nbsp;serveru.&lt;br /&gt;
** Server: ''www.oauh.cz''&lt;br /&gt;
** Port: 80&lt;br /&gt;
* Ihned po navázání spojení klikněte do okénka PuTTY pravým tlačítkem.&lt;br /&gt;
** Tím provedete operaci „paste“: odešlete otevřeným spojením celý obsah schránky Windows (ve schránce máte připravený požadavek HTTP GET).&lt;br /&gt;
* Zkontrolujte odpověď.&lt;br /&gt;
** Odpověď serveru by měla začínat: &amp;lt;code&amp;gt;200 OK&amp;lt;/code&amp;gt;&lt;br /&gt;
** Pokud je odpověď jiná, najděte chybový kód a&amp;amp;nbsp;upravte postup.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Poznamka&amp;quot;&amp;gt;&lt;br /&gt;
; Obvyklé chyby&lt;br /&gt;
* Chybějící hlavička &amp;lt;code&amp;gt;Host:&amp;lt;/code&amp;gt;&lt;br /&gt;
* Špatná velikost písmen (dodržte malá a&amp;amp;nbsp;velká písmena podle vzoru).&lt;br /&gt;
* Chybějící prázdný řádek na konci (požadavek končí prázdným řádkem &amp;amp;mdash; dvěma dvojicemi CR+LF).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Spravce</name></author>	</entry>

	</feed>