Hypertext Transfer Protocol: Засвар хоорондын ялгаа

Content deleted Content added
No edit summary
No edit summary
Мөр 1:
== [[HTTP протокол]] ==
 
=== Интернэт протоколууд: ===
Интернэт протокол гэдэг нь файлууд буюу өгөгдлийг нэг машинаас нөгөө машинд дамжуулахад хэрэглэгддэг командын цуглуулга юм. Интернэтэд холбогдсон бүх компьютерүүд нь өөр хоорондоо TCP/IP (Transmission Control Protocol / Internet Protocol) протокол ашиглан холбогддог.
 
Мөр 16:
– Telnet Protocol: Телнэт хэсгийг нээхэд хэрэглэгддэг.
 
=== HTTP протоколын тухай товч түүх: ===
Өнөөгийн хамгийн хэрэгцээт зүйл болох "World Wide Web" 1989 онд төслийг  Berners Lee анх санал болгосон. Протоколын анхны хувилбар нь зөвхөн нэг аргыг, тухайлбал GET, серверээс хариу үргэлж HTML хуудсыг шаарддаг байв.
 
Мөр 30:
* <nowiki>RFC 7235</nowiki>, ''HTTP/1.1: Нотолгоо''
 
=== HTTP горим: ===
HTTP горим нь хурал сүлжээний хүсэлт, хариу гүйлгээний дараалал юм. HTTP клиент сервер дээр нь тодорхой порт уруу Transmission Control Protocol (TCP) холболт тогтоох замаар хүсэлт эхлүүлнэ (ихэвчлэн порт нь 80, хааяа порт нь 8080, TCP болон UDP портын дугаарын жагсаалтыг үзнэ үү). HTTP сервер нь үйлчлүүлэгчийн хүсэлтийг хүлээн авч,  хүсэлтийг серверт  "HTTP / 1.1 200 OK" гэсэн статус шугам, мөн өөрийн гэсэн зурвас буцааж илгээж байдаг. Энэ зурваст бие ч алдааны мэдээлэл болон бусад мэдээллийг мөн буцаж болно, хүссэн эх үүсвэр нь ихэвчлэн юм<ref name=":2">3</ref>
 
Мөр 43:
[[Файл:Picture3.jpg.png|thumbnail|'''''Зураг 2. Хүсэлт ба хариу үйлдэл''''']]
 
=== HTTP нотолгоо: ===
HTTP нь үндсэн хандалтын баталгаа болгон нэвтрэлт танилт хэд хэдэн тогтолцоог хангаж, сорилт, хариу арга механизмыг ашиглан үйл ажиллагаа явуулж хандалтын танилт эзэмших үүгээр хүссэн агуулга үйлчлэх өмнө сервер тодорхойлж, бэрхшээл асуудлуудыг шийдвэрлэж байдаг. HTTP асуудал-хариу нэвтрэлт танилт схем нь өргөтгөх багц, үйлчлүүлэгч хүсэлт татгалзан гаргах тухай сервер ашиглаж болно дамжуулан нэвтрэлт танилтын мэдээллээр хангах нь үйлчлүүлэгч, хандалтын хяналт болон нэвтрэлт танилт нь ерөнхий хүрээг өгдөг.
 
=== HTTP үйлчлүүлэгч-сервер: ===
:''HTTP нь [[:en:Hypertext_Transfer_Protocol#Client_request|"үйлчлүүлэгч-сервер"]]'' гэсэн гол зарчимаар үүсгэгддэг ба үйлчлүүлэгч (хөтөч) нь сервер (apache, nginx, ligthttp) рүү хүсэлт илгээдэг ба хэрвээ амжилттай холбогдож чадвал хүсэлтэнд хариу болгон сервер үйлчлүүлэгч рүү мэдээлэл илгээнэ. Мэдээлэл гэдгийн дор бид бараг юуг ч ойлгож болно. Энэ нь дээр дурдсан "уян хатан" шинж чанартай холбоотой. Протокол урсгал аудио, видео дамжуулах чадвартай, эсвэл бусад протоколуудад зориулсан дамжуулагчийн үүргийг ч гүйцэтгэж болно. Тэгэхээр клиент сервер 2-ийн хооронд ямар харилцаа холбоо явагддаг талаар авч үзье.
Үйлчлүүлэгчээс илгээгдэх хүсэлт нь дараах 3 хэсгээс бүрддэг.
Мөр 57:
Зарим нэг шинэ зүйлүүдийг танилцуулсан одоогийн хувилбар нь HTTP нь 1.1 юм. Миний бодлоор, эдгээрээс хамгийн чухал нь: байнга нээлттэй холболт, шинэ өгөгдөл дамжуулах механизм chunked transfer encoding, түр тогтоогчид зориулсан шинэ толгойууд юм. Эдгээрээс зарим нэгийг нь энэ нийтлэлийн хоёр дахь хэсэгт авч үзэх болно.
 
=== Арга замууд: ===
Гипер холбоос (URL)-ийн тусламжтайгаар бид холбогдохыг хүсэж буй эзэмшигчийн нэрийг нарийн тодорхойлж болох боловч ингэхийн тулд ямар үйлдэл хийхийг HTTP –аргын тусламжтайгаар мэдээлж болно. Мэдээжийн хэрэг бид гүйцэтгэж чадах хэд хэдэн төрлийн үйлдлийг гүйцэтгэнэ. HTTP-д хамгийн их хэрэгтэй, ихэнх програмуудад тохиромжтойг нь хэрэгжүүлнэ.
Одоо байгаа аргууд нь:
Мөр 69:
*'''TRACE''' – Олон тооны оролтын цэгүүд ба серверийн төлөөлөлүүдээр хүсэлт дамжих үед тус бүрдээ өөрийн мэдээлэлүүдийг өөртөө агуулж байдаг IP, DNS. Энэ аргаар бүх түр зуурын мэдээлэлүүдийг харж болно.
*'''OPTIONS''' – энэ нь серверийн боломж, түүний параметрүүд болон тухайн нөөцөд тохирсон тохиргоо зэргийг тодорхойлоход ашиглагдана
===Гипер холбоос (URL)-ын тухай товч:===
Веб харилцааны үндсэн гол хэсэг нь [[:en:Hyperlink|гипер холбоосоор]] дамжин хүргэгддэг холбоос юм. URL хаяг гэж юу болох талаар та нар аль хэдийн ойлголттой босон байгаа гэдэгт би итгэлтэй байна гэсэн ч бүрэн зураглалын талаар товч ганц хоёр үг хэлмээр байна.
 
Мөр 77:
Энгийн холболтонд зориулагдсан протокол http байдаг ба харин илүү аюулгүй хамгаалалт сайтай өгөгдөлүүдийг солилцоход https нь ашиглагддаг. Анхдагч порт нь 80. Цаашлаад сервер дээрх нөөц рүү хүрэх зам нь гарах ба параметрүүдийн гинжин холбоо үүснэ
 
=== Гипер холбоос оруулах: ===
HTML хэлэнд гипер холбоосыг <a> гэсэн битүү тааг ашиглаж оруулдаг. Гипер холбоосоор холбогдож буй веб хуудас нь нэг бол гипер холбоосыг оруулж буй веб хуудастай хамт нэг компьютер дээр байж болно.Эсвэл интенетэд тодорхой URL-хаягаар байрласан байж болно.
[[Файл:Hyperlinks.jpg|thumb|'''''Зураг 4. Гипер холбоосын жишээ''''']]
Жишээ нь:<body>       <a href="index.html"> Энд дар </a></body>эсвэл:<body>       <a href="files/index.html"> Энд дар </a></body>эсвэл:<body>       <a href="http://www.baixguisite.com/index.html"> Энд дар </a></body>г.м. Энд буй href нь <a> таагийн атрибут бөгөөд гипер холбоосын хаягийгтодорхойлдог нь харагдаж байна.
 
=== Мэдээлэл хүлээн авагч: ===
Мэдээлэл хүлээн авагч нь дараах хэсгээс бүрдэнэ:
* хүсэлт шугам (жишээ нь, GET /images/logo.png HTTP / 1.1, серверээс /images/logo.png хэмээх нөөцийг хүсэлт).
Мөр 92:
Зөвхөн зам нэрийг агуулсан хүсэлт шугам RFC нь HTTP / 1.0 тодорхойлолтод өмнө HTTP үйлчлүүлэгч нь нийцтэй хадгалах сервер хүлээн зөвшөөрсөн байна.
 
=== Хариу мэдээлэл: ===
Хариу мэдээлэл нь дараах хэсгээс бүрдэнэ:
* Байдлыг илэрхийлэгч шугам (харилцагчийн хүсэлтийг амжилттай гэдгийг харуулж байна жишээ нь HTTP / 1.1 200 OK) статус код болон шалтгаан нь зурвас орно.
Мөр 100:
Байдлыг илэрхийлэгч шугам болон бусад толгой талбар байх ёстой бүхий л эцсийн <CR> <LF>. хоосон мөр зөвхөн <CR> <LF> болон өөр ямар ч зайгаар нь Энэ чанд шаардлага бүрдсэн байх ёстой. <CR> <LF> зэрэг зарим мэдээ байгууллагуудын дотор бусад системийн шугам завсарлагааны тууштай ашиглах суларч байна
 
=== Серверийн хариу мэдээлэл: ===
HTTP/1.1 200 OK Date: Mon, 23 May 2005 22:38:34 GMT Content-Type: text/html; charset=UTF-8 Content-Encoding: UTF-8 Content-Length: 138 Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux) ETag: "3f80f-1b6-3e1cb03b" Accept-Ranges: bytes Connection: close <html> <head> <title>An Example Page</title> </head> <body> Hello World, this is a very simple HTML document. </body> </html>
 
Мөр 106:
* [[:en:Basic_access_authentication|Basic access authentication]]
* [[:en:Constrained_Application_Protocol|Constrained Application Protocol]] – A semantically similar protocol to HTTP but used UDP or UDP-like messages targeted for devices with limited processing capability. Re-uses HTTP and other internet concepts like [[Internet media type]] and web linking (<nowiki>RFC 5988</nowiki>)<sup>[[Hypertext Transfer Protocol|[32]]]</sup>
* [[:en:Content_negotiation|Content negotiation]] холбоосоор хандан авч болно.
 
=== Тэмдэглэл: ===
<ref name=":0" />  Tim Berners-Lee. "The Original HTTP as defined in 1991". World Wide Web Consortium. Retrieved 24 July 2010.
 
Мөр 115:
<ref name=":2" /> Berners-Lee, Tim; Fielding, Roy T.; Nielsen, Henrik Frystyk. "Method Definitions". Hypertext Transfer Protocol -- HTTP/1.0. IETF. pp. 30-32. sec. 8. <nowiki>RFC 1945</nowiki>.
 
=== Гадаад линкүүд: ===
* [https://www.w3.org/Protocols/History.html A detailed technical history of HTTP.]
* [https://www.w3.org/Protocols/DesignIssues.html Design Issues by Berners-Lee when he was designing the protocol.]
* [https://www.w3.org/Protocols/Classic.html list of other classic documents recounting the early protocol history]
 
=== Ном зүйн жагсаалт: ===
[[Ангилал:HTTP| ]]
[[Ангилал:Интернэт хэрэглээний протокол]]