рд╣рдо рдЖрдкрдХреЛ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдореБрдЦреНрдп рдкрд╣рд▓реБрдУрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ - рдПрдХ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЬреЛ 90 рдХреЗ рджрд╢рдХ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдЖрдЬ рддрдХ рдЖрдкрдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рд╡реЗрдм рдкреЗрдЬ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рд▓реЗрдЦ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдЕрднреА рдХрдВрдкреНрдпреВрдЯрд░ рдиреЗрдЯрд╡рд░реНрдХ рдФрд░ рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рджрдо рдкрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкрдврд╝рдирд╛ рдЕрднреА рднреА рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
HTTP рдПрдХ рд╡реНрдпрд╛рдкрдХ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИ, рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╣рд╛рдЗрдкрд░рдЯреЗрдХреНрд╕реНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ (рдЕрд░реНрдерд╛рдд, рдРрд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЬрд┐рдирдореЗрдВ рд▓рд┐рдВрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдЕрдиреНрдп рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ)ред
рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо HTTP
рд╣рд╛рдЗрдкрд░ рдЯреЗрдХреНрд╕реНрдЯ
рдЯреНрд░рд╛рдВрд╕рдлрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╣реИ , "рд╣рд╛рдЗрдкрд░рдЯреЗрдХреНрд╕реНрдЯ
рдЯреНрд░рд╛рдВрд╕рдлрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ ред"
рдУрдПрд╕рдЖрдИ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░, HTTP рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдКрдкрд░реА, 7 рд╡рд╛рдВ) рдкрд░рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИред рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг, HTTP 1.1,
RFC 2616 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИред
HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рдЕрдиреБрд░реЛрдз рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╕рд░реНрд╡рд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╡рд╛рдкрд╕ рднреЗрдЬрддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрдиреНрдп рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрдВрдЧреЗред
HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдХрд╛рд░реНрдп рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рд╣реИ рдЬреЛ рд╡реЗрдм рд╕рдВрд╕рд╛рдзрдиреЛрдВ (рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░) рдФрд░ рдПрдХ рд╡реЗрдм рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдпрд╣ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рд╣реИ рдХрд┐ рд╡рд░реНрд▓реНрдб рд╡рд╛рдЗрдб рд╡реЗрдм рд╕рдорд░реНрдерд┐рдд рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, HTTP рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рдПрд╕рдУрдПрдкреА, рдПрдХреНрд╕рдПрдордПрд▓-рдЖрд░рдкреАрд╕реА рдФрд░ рд╡реЗрдмрджрд╛рд╡ рдЬреИрд╕реЗ рдЕрдиреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЗрдпрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╕реВрдЪрдирд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ "рдкрд░рд┐рд╡рд╣рди" рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдХрдИ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЗ рдПрдкреАрдЖрдИ рдХрд╛ рдЕрд░реНрде рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХреЗ рд▓рд┐рдП HTTP рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рднреА рд╣реИ - рдбреЗрдЯрд╛ рд╕реНрд╡рдпрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, XML рдпрд╛ JSONред
рдЖрдорддреМрд░ рдкрд░, HTTP рдкрд░ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдЯреАрд╕реАрдкреА / рдЖрдИрдкреА рдХрдиреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЖрдорддреМрд░ рдкрд░ рдЯреАрд╕реАрдкреА рдкреЛрд░реНрдЯ 80 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдФрд░ рдпрджрд┐ рдкреЛрд░реНрдЯ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЖрдорддреМрд░ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЦреБрд▓реЗ HTTP рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП 80 рд╡реЗрдВ рдкреЛрд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ), рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдЕрдиреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
HTTP рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ рдХреИрд╕реЗ рднреЗрдЬреЗрдВ?
HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╡реЗрдм рд╕рдВрд╕рд╛рдзрди рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рд╣реИред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдк рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдирд╛рддреЛрд▓реА рдЕрд▓рд┐рдЬрд╝рд╛рд░ рдХреЗ рд▓реЗрдЦ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред
рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЙрд╕рдиреЗ рдкрддрд╛ рдмрд╛рд░ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджрд░реНрдЬ рдХрд┐рдпрд╛ рд╣реИ:
http://alizar.habrahabr.ru/
рддрджрдиреБрд╕рд╛рд░, рдПрдХ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдм рдЖрдкрдХреЛ alizar.habrahabr.ru рдкрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдЙрдкрдпреБрдХреНрдд рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреЗрд▓рдиреЗрдЯ:
telnet alizar.habrahabr.ru 80
рдореИрдВ рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рдХрд░ рджреВрдВрдЧрд╛ рдХрд┐ рдпрджрд┐ рдЖрдк рдЕрдЪрд╛рдирдХ рдЕрдкрдирд╛ рджрд┐рдорд╛рдЧ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ Ctrl + "] рджрдмрд╛рдПрдВ" рдФрд░ рдлрд┐рд░ рджрд░реНрдЬ рдХрд░реЗрдВ - рдпрд╣ рдЖрдкрдХреЛ HTTP рдХрдиреЗрдХреНрд╢рди рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рдЯреЗрд▓рдиреЗрдЯ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рд╕реНрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдПрдирд╕реА (рдпрд╛ рдПрдирд╕реАрдПрдЯреА) рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ HTTP рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣, рд╡реИрд╕реЗ, рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ - HTTP рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рдХреЗрд╡рд▓ рджреЛ рд▓рд╛рдЗрдиреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред
HTTP рдЕрдиреБрд░реЛрдз рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯ рд▓рд╛рдЗрди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╣реЗрдбрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ - рдпрд╣ рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рд╣реИ, рдЬрд┐рд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдбреЛрдореЗрди рдирд╛рдо рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдкрд░ рдПрдХ рдЖрдИрдкреА рдкрддреЗ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░, рддрджрдиреБрд╕рд╛рд░, рдЬрдм рдЖрдк рдПрдХ рдЯреАрд╕реАрдкреА рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рддреЗ рд╣реИрдВ, рддреЛ рджреВрд░рд╕реНрде рд╕рд░реНрд╡рд░ рдХреЛ рдЗрд╕ рдмрд╛рдд рдХреА рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдХрд┐ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХрд┐рд╕ рдкрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИред , рдкрддрд╛ alizar.habrahabr.ru, habrahabr.ru рдпрд╛ m.habrahabr.ru рд╣реИ - рдФрд░ рдЗрди рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрддреНрддрд░ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрд╢рди рд╣реЛрд╕реНрдЯ 212.24.43.44 рдХреЗ рд╕рд╛рде рдЦреБрд▓рддрд╛ рд╣реИ, рдФрд░ рднрд▓реЗ рд╣реА рдХрдиреЗрдХреНрд╢рди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдбреЛрдореЗрди рдирд╛рдо рд╢реБрд░реВ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╕рд░реНрд╡рд░ рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╕реВрдЪрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдФрд░ рдЗрд╕реАрд▓рд┐рдП рдпрд╣ рдкрддрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рдореЗрдВ рдкрд╛рд╕ рдХрд░реЗрдВред
HTTP 1.1 рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрдн (рдкреНрд░рд╛рд░рдВрднрд┐рдХ) рдЕрдиреБрд░реЛрдз рдкрдВрдХреНрддрд┐ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдмрдирд╛рдИ рдЧрдИ рд╣реИ:
HTTP
URI рд╡рд┐рдзрд┐ /
рд╕рдВрд╕реНрдХрд░рдгрдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП (рдЗрд╕ рддрд░рд╣ рдХреА рдПрдХ рд╢реБрд░реБрдЖрдд рд░реЗрдЦрд╛ рдпрд╣ рд╕рдВрдХреЗрдд рджреЗ рд╕рдХрддреА рд╣реИ рдХрд┐ рд╕рд╛рдЗрдЯ рдХреЗ рдореБрдЦреНрдп рдкреГрд╖реНрда рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ):
GET / HTTP/1.1
рд╡рд┐рдзрд┐ (рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рд╡рд┐рд╖рдп рд╕рд╛рд╣рд┐рддреНрдп рдореЗрдВ рд╢рдмреНрдж
рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдФрд░ рдХрднреА-рдХрднреА
рдХреНрд░рд┐рдпрд╛ рд╢рдмреНрдж - "рдХреНрд░рд┐рдпрд╛") рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рд╡рд┐рднрд╛рдЬрдХ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдХрд┐рд╕реА рднреА рд╡рд░реНрдг рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реИ, рдФрд░ рдЙрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕рд╛рдзрди рдХреЗ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред HTTP 1.1 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реАрдорд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдирдХреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреА рд╡реНрдпрд╛рдкрдХ рд╕рдВрднрд╡ рд╕реАрдорд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдХреЗрд╡рд▓ рдХреБрдЫ рд╕рдмрд╕реЗ рдорд╛рдирдХ рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред
URI (
рдпреВрдирд┐рдлрд╝реЙрд░реНрдо рд░рд┐рд╕реЛрд░реНрд╕ рдЖрдЗрдбреЗрдВрдЯрд┐рдлрд╝рд╛рдпрд░ ) - рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕рд╛рдзрди (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдбреЙрдХреНрдпреВрдореЗрдВрдЯ) рдХрд╛ рдкрде, рдЬрд┐рд╕ рдкрд░ рдЖрдкрдХреЛ рдПрдХ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк GET рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рдВрд╕рд╛рдзрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛)ред рдХреБрдЫ рдЕрдиреБрд░реЛрдз рдХрд┐рд╕реА рднреА рд╕рдВрд╕рд╛рдзрди рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдпреВрдЖрд░рдЖрдИ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди (рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди, "*" рд╡рд░реНрдг) рдХреЛ рд╕реНрдЯрд╛рд░реНрдЯ рд▓рд╛рдЗрди рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рдЕрдиреБрд░реЛрдз рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ, рди рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕рд╛рдзрди рд╕реЗред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкреНрд░рд╛рд░рдВрдн рд░реЗрдЦрд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:
OPTIONS * HTTP/1.1
рд╕рдВрд╕реНрдХрд░рдг рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ HTTP рдорд╛рдирдХ рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдПрдХ рдбреЙрдЯ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
1.1 ) рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рджреЛ рдирдВрдмрд░реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рдПрдХ рд╡реЗрдм рдкреЗрдЬ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдорд╛рд░реНрдЧ "/" рд╣реИ), рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рдЪрд╛рд╣рд┐рдП:
GET / HTTP/1.1
Host: alizar.habrahabr.ru
рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рд▓рд╛рдЗрди рд▓рдкреЗрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреИрд░рд┐рдЬ рд░рд┐рдЯрд░реНрди рдЪрд░рд┐рддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЙрд╕рдХреЗ рдмрд╛рдж рд▓рд╛рдЗрди рдлреАрдб рдЪрд░рд┐рддреНрд░ред рдЕрдВрддрд┐рдо рд╣реЗрдбрд░ рдШреЛрд╖рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдгреЛрдВ рдХрд╛ рдХреНрд░рдо рджреЛ рдмрд╛рд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐, HTTP рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ, рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ HTTP рд╕рд░реНрд╡рд░ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдП рдХрд┐ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рджреМрд░рд╛рди, LF рд╡рд░реНрдг рдХреЛ рд▓рд╛рдЗрди рд╡рд┐рднрд╛рдЬрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рдП, рдФрд░ рдкрд┐рдЫрд▓реЗ CR рд╡рд░реНрдг, рдпрджрд┐ рдХреЛрдИ рд╣реЛ, рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд░реНрд╡рд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдВрдЧреЗ, рдЬрд╣рд╛рдВ рд╣реЗрдбрд░ рдПрд▓рдПрдл рдкреНрд░рддреАрдХ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдВрддрд┐рдо рд╣реЗрдбрд░ рдШреЛрд╖рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рджреЛ рдмрд╛рд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрдбрд╝рд╛рдИ рд╕реЗ рдПрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдмрдЪ рдЕрдиреБрдХреНрд░рдо \ r рдФрд░ \ n рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
echo -en "GET / HTTP/1.1\r\nHost: alizar.habrahabr.ru\r\n\r\n" | ncat alizar.habrahabr.ru 80
рдЬрд╡рд╛рдм рдХреИрд╕реЗ рдкрдврд╝реЗрдВ?
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЖрд░рдВрдн рд░реЗрдЦрд╛ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд░рдЪрдирд╛ рд╣реИ:
HTTP /
рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд┐рддрд┐ рдХреЛрдб рд╕реНрдкрд╖реНрдЯреАрдХрд░рдгрдкреНрд░реЛрдЯреЛрдХреЙрд▓
рд╕рдВрд╕реНрдХрд░рдг рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣рд╛рдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╕реНрдерд┐рддрд┐ рдХреЛрдб - рддреАрди рдЕрдВрдХ (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкрд╣рд▓рд╛ рд╕реНрдерд┐рддрд┐ рд╡рд░реНрдЧ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ) рдЬреЛ рдЕрдиреБрд░реЛрдз рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ GET рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╕рд░реНрд╡рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реНрдерд┐рддрд┐ рдХреЛрдб 200 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рд╕рд░реНрд╡рд░ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рд╕рдВрд╕рд╛рдзрди рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ - 404. рдпрджрд┐ рд╕рд░реНрд╡рд░ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рд╕рдВрд╕рд╛рдзрди рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдХреЛрдб 403 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред HTTP 1.1 рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди 40 рдЕрд▓рдЧ-рдЕрд▓рдЧ HTTP рдХреЛрдб рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдерд┐рддрд┐ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред
рд╕реНрдерд┐рддрд┐ рдХреЛрдб (
рдХрд╛рд░рдг рд╡рд╛рдХреНрдпрд╛рдВрд╢ ) рдХрд╛ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг - рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛрдб рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ (рд▓реЗрдХрд┐рди
рд╕реАрдЖрд░ рдФрд░
рдПрд▓рдПрдл рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ), рдПрдХ рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрддрд░ рдХреЛ рдкрдврд╝рдиреЗ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рджреНрд╡рд╛рд░рд╛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХреБрдЫ рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдорд╛рдирдХ рд╕реЗ рднрд┐рдиреНрди рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рд╣реЗрдбрд░, рд╕рд╛рде рд╣реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╢рд░реАрд░ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
HTTP/1.1 200 OK Server: nginx/1.2.1 Date: Sat, 08 Mar 2014 22:53:46 GMT Content-Type: application/octet-stream Content-Length: 7 Last-Modified: Sat, 08 Mar 2014 22:53:30 GMT Connection: keep-alive Accept-Ranges: bytes Wisdom
рдЕрдВрддрд┐рдо рд╢реАрд░реНрд╖рд▓реЗрдЦ рдХреЗ рдмрд╛рдж рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд┐рдХрд╛рдп рджреЛ рдкрдВрдХреНрддрд┐ рд╡рд┐рд░рд╛рдо рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд┐рдХрд╛рдп рдХреЗ рдЕрдВрдд рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
рд╕рд╛рдордЧреНрд░реА-рд▓рдВрдмрд╛рдИ рдХреЗ рд╣реЗрдбрд░ рдХреЗ рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ 7 рдСрдХреНрдЯрд▓ рдмрд╛рдЗрдЯреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ: рд╢рдмреНрдж "рдмреБрджреНрдзрд┐" рдФрд░ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдЪрд░рд┐рддреНрд░)ред
рд▓реЗрдХрд┐рди рд╣рдо рдкрд╣рд▓реЗ рдХрд┐рдП рдЧрдП рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛрдб 200 рдХреЗ рд╕рд╛рде рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдХреЛрдб 302 рдХреЗ рд╕рд╛рде рдЙрддреНрддрд░ рд▓реМрдЯрд╛рдПрдВрдЧреЗред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдВрд╕рд╛рдзрди рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрддреЗ рдкрд░ рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЕрдкрдиреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ:
HTTP/1.1 302 Moved Temporarily Server: nginx Date: Sat, 08 Mar 2014 22:29:53 GMT Content-Type: text/html Content-Length: 154 Connection: keep-alive Keep-Alive: timeout=25 Location: http://habrahabr.ru/users/alizar/ <html> <head><title>302 Found</title></head> <body bgcolor="white"> <center><h1>302 Found</h1></center> <hr><center>nginx</center> </body> </html>
рд╕реНрдерд╛рди рд╢реАрд░реНрд╖рдХ рдирдпрд╛ рдкрддрд╛ рд╣реИред рдЕрдм URI (рд╕рдВрд╕рд╛рдзрди рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛) / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / alizar / рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рд╕рдордп рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рдХреЛ habrahabr.ru рдкрд░ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рд╕рдорд╛рди рд╕рд░реНрд╡рд░ рд╣реИ), рдФрд░ рдЗрд╕реЗ рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред
рд╡рд╣ рд╣реИ:
GET /users/alizar/ HTTP/1.1
Host: habrahabr.ru
рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ, рд╣рдмреНрд░реЗрдмреНрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЛрдб 200 рдФрд░ рдПрдХ рдХрд╛рдлреА рдмрдбрд╝реЗ HTML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЬрд╛рд░реА рдХрд░реЗрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднреВрдорд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдЕрднреНрдпрд╕реНрдд рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ, рддреЛ рдЕрдм рдЖрдк рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд HTML рдХреЛрдб рдХреЛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рдкреЗрдВрд╕рд┐рд▓ рдФрд░ рдПрдХ рдиреЛрдЯрдмреБрдХ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ Alizar рдХреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рд╡рд╣ рд╕реНрдерд╛рди рд╣реЛрдЧрд╛ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдм рдХрд░реЗрдЧрд╛ред
рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?
HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реНрд╡рдпрдВ рд╕реВрдЪрдирд╛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдлрд┐рд░ рднреА, HTTP рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╛рдкрдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реИ рдЬреЛ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓
рдПрд╕рдПрд╕рдПрд▓ рдпрд╛
рдЯреАрдПрд▓рдПрд╕ рдореЗрдВ рдкреНрд░реЗрд╖рд┐рдд рдбреЗрдЯрд╛ рдХреА рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдирд╛рдо
HTTPS (
HyperText Transfer Protocol Secure ) рд╣реИред HTTPS рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП, TCP рдкреЛрд░реНрдЯ 443 рдХрд╛ рдЖрдорддреМрд░ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕реВрдЪрдирд╛ рдХреЛ рдЕрд╡рд░реЛрдзрди рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рд╣реЛрдиреЗ рдкрд░,
рдордзреНрдп-рдордзреНрдп рд╣рдорд▓реЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА рд╕реЗ рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдкреБрд╖реНрдЯрд┐ рдирд╣реАрдВ рдХреА, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╣рдорд▓рд╛рд╡рд░ рдХреЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рдереЗред
HTTPS рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рднреА рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред
рдХреНрдпрд╛ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ?
HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛рдлреА рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, HTTP 1.1 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдПрдХ рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рд╣реЗрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рд╢реАрд░реНрд╖ рд▓реЗрдЦ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдиреБрд░реЛрдз рдЧреНрд░рд╛рд╣рдХ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рд╕рд░реНрд╡рд░ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рд╡рд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ "426 рдЕрдкрдЧреНрд░реЗрдб рдЖрд╡рд╢реНрдпрдХ" рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдХ рдирдпрд╛ рдЕрдиреБрд░реЛрдз рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдЧреНрд░реЗрдб рд╣реЗрдбрд░ рдХреЗ рд╕рд╛рдеред
рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, WebSocket рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (
RFC 6455 рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЬреЛ рдЕрддрд┐рд░рд┐рдХреНрдд HTTP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рднреЗрдЬреЗ рдмрд┐рдирд╛ рд╕рд╣реА рд╕рдордп рдкрд░ рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХреЗ рдЖрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдорд╛рдирдХ "рд╣реИрдВрдбрд╢реЗрдХ" рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдПрдХ HTTP рдЕрдкрдЧреНрд░реЗрдб рдХреЗ рд╕рд╛рде "рд╡реЗрдмрд╕реЛрдХреЗрдЯ" рдорд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рд╣реЗрдбрд░ рдЕрдиреБрд░реЛрдз, рдЬрд┐рд╕рдореЗрдВ рд╕рд░реНрд╡рд░ "101 рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓" рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рджреЛрдиреЛрдВ рддрд░рдл рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡реЗрдмрд╕реНрдХреЗрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдХреНрдпрд╛ рдЖрдк рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╡реИрд╕реЗ?
рдлрд┐рд▓рд╣рд╛рд▓, рд╡реЗрдм рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рдЕрдиреНрдп рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ,
SPDY рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (рдЕрдВрдЧреНрд░реЗрдЬреА рд╢рдмреНрдж
рд╕реНрдкреАрдбреА рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдЪреНрдЪрд╛рд░рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рдирд╣реАрдВ рд╣реИ) HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдПрдХ рд╕рдВрд╢реЛрдзрди рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╡реЗрдм рдкреЗрдЬ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рджреЗрд░реА рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИред
рдЧрддрд┐ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╡реЗрдм рдкреЗрдЬ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдФрд░ рдЧреБрдгрд╛ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛рддреА рд╣реИ рддрд╛рдХрд┐ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдХрдиреЗрдХреНрд╢рди рдХреЗ рднреАрддрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
рдирд╡рдВрдмрд░ 2012 рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд HTTP 2.0 рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдорд╕реМрджрд╛ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ (рд╕рдВрд╕реНрдХрд░рдг 1.1 рдХреЗ рдмрд╛рдж HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЕрдЧрд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╡рд┐рдирд┐рд░реНрджреЗрд╢ 1999 рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реБрдЖ рдерд╛) SPDY рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред
рдПрд╕рдкреАрдбреАрд╡рд╛рдИ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдХрдИ рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрдиреНрдп рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиреЛрдВ рдореЗрдВ рдЬреЛ рдХрд┐ HTTP 2.0 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдорд╕реМрджрд╛ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╕рдордп httpbis рдХрд╛рд░реНрдп рд╕рдореВрд╣ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдкрд╣рд▓реЗ HTTP-NG рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди HTTP-NG рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдХрд╛рдо рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред 1998 рдореЗрдВред
рдлрд┐рд▓рд╣рд╛рд▓, SPDY рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, рдХреНрд░реЛрдорд┐рдпрдо / рдХреНрд░реЛрдо, рдУрдкреЗрд░рд╛, рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕реЙрдкрд░ рдФрд░ рдЕрдореЗрдЬрд╝реЕрди рд╕рд┐рд▓реНрдХ рдореЗрдВ рд╣реИред
рддреЛ рдХреНрдпрд╛?
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рд╛рдБред рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрд░реАрдХреЛрдВ рдФрд░ рд╣реЗрдбрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдпрджрд┐ рдЖрдк рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд▓рд┐рдЦрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдпрд╛ рдХреБрдЫ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЬреЛ HTTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ), рдФрд░ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреА рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рд╕рдордЭ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╕рдм рдЖрдк рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ Google рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ рд╣реИ, рдФрд░ рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдкрд░, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рдЕрдВрдЧреНрд░реЗрдЬреА рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ HTTP рд╣реА рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреАрд╕реАрдкреА / рдЖрдИрдкреА рдкреИрдХреЗрдЯ рдХрд╛ рднреА рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ
рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рдареАрдХ рд╣реИ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдХреЛрдИ рднреА рддрдХрдиреАрдХ рдмрд╣реБрдд рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖ рдЬрд╛рддреА рд╣реИ рдЬрдм рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рд╕реМрднрд╛рдЧреНрдп рдФрд░ рдлрд▓рджрд╛рдпреА рд╡рд┐рджреНрдпрд╛!