موقع HTTP

يتم إرجاع حقل رأس HTTP Location في الاستجابات من خادم HTTP في حالتين:

  1. لإعادة توجيه عنوان URL إلى متصفح الويب ، يجب إرسال ترويسة الموقع (Location) مع رمز حالة HTTP 3xx. يتم تمريرها كجزء من استجابة خادم الويب عندما يحتوي عنوان URI المطلوب على:
    • تم نقلها مؤقتاً؛
    • تم نقلها بشكل دائم؛ أو
    • تمت معالجة طلب، على سبيل المثال نموذج تم إرساله عبر POST، ويتم الآن تقديم نتيجة هذا الطلب على عنوان URI مختلف.
  2. لتوفير معلومات حول موقع مورد تم إنشاؤه حديثًا. في هذه الحالة، يجب إرسال رأس الموقع مع رمز حالة HTTP 201 أو 202. [ 1 ]

كانت نسخة قديمة من مواصفات HTTP 1.1 (IETF RFC 2616) تتطلب عنوان URI مطلقًا كاملًا لإعادة التوجيه. [ 2 ] وقد وجد فريق عمل HTTP التابع لـ IETF أن معظم متصفحات الويب الشائعة تسمح بتمرير عنوان URL نسبي [ 3 ] ، وبالتالي، خففت مواصفات HTTP 1.1 المحدثة (IETF RFC 7231) القيد الأصلي، مما سمح باستخدام عناوين URL النسبية في رؤوس الموقع. [ 4 ]

أمثلة

مثال على عنوان URL مطلق

عناوين URL المطلقة هي عناوين تبدأ ببروتوكول معين [ 5 ] (مثل http:، https:، telnet:، mailto:) [ 6 ] وتتوافق مع قواعد ودلالات خاصة بهذا البروتوكول. على سبيل المثال، تتطلب قواعد ودلالات بروتوكول HTTP لعناوين URL الخاصة به "المضيف" (عنوان خادم الويب) و"المسار المطلق"، مع مكونات اختيارية هي "المنفذ" و"الاستعلام".

عميل يطلب الوصول إلى https://www.example.com/index.html باستخدام

طلب GET إلى /index.html HTTP / 1.1 Host : www.example.com

قد يحصل على استجابة الخادم

HTTP / 1.1 302 تم العثور على الموقع : https://www.example.org/index.php

مثال على مسار URL نسبي أو مسار مطلق

عناوين URL النسبية هي عناوين URL لا تتضمن بروتوكولًا أو مضيفًا. ولكي يتم فهمها، يجب دمجها مع عنوان URL للطلب الأصلي.

قد يحصل طلب العميل لـ https://www.example.com/blog/all على استجابة من الخادم بمسار مطلق لأنه يبدأ بشرطة مائلة: [ 7 ]

HTTP / 1.1 302 تم العثور على الموقع : /articles/

يقوم العميل بتوسيع عنوان URL للموقع إلى https://www.example.com/articles/ . [ 8 ]

مثال على مسار نسبي في عنوان URL

قد يحصل طلب العميل لـ https://www.example.com/blog/latest على استجابة من الخادم بمسار نسبي لأنه لا يبدأ بشرطة مائلة: [ 7 ]

HTTP / 1.1 302 تم العثور على الموقع : 2020/zoo

يقوم العميل بإزالة جزء المسار الذي يلي آخر شرطة مائلة في عنوان URL الأصلي، ثم يضيف المسار النسبي، مما ينتج عنه https://www.example.com/blog/2020/zoo . [ 9 ] [ 8 ]

انظر أيضاً

مراجع

  1. ريتشاردسون، ليونارد (2007). خدمات الويب RESTful . سيباستوبول: أورايلي. الصفحات 228-230 . ISBN  978-0-596-52926-0.
  2. "الموقع" . بروتوكول نقل النص التشعبي - HTTP/1.1 . IETF . يونيو 1999. القسم 14.30. doi : 10.17487/RFC2616 . RFC 2616 . 
  3. تذكرة مجموعة عمل بروتوكول HTTPbis التابعة لـ IETF رقم 185
  4. "الموقع" . بروتوكول نقل النص التشعبي (HTTP/1.1): الدلالات والمحتوى . IETF . يونيو 2014. القسم 7.1.2. doi : 10.17487/RFC7231 . RFC 7231 . 
  5. مُعرِّف الموارد الموحد (URI): الصيغة العامة . IETF . يناير 2005. doi : 10.17487/RFC3986 . RFC 3986 .
  6. "مخططات معرف الموارد الموحد (URI) التابعة لهيئة IANA" . تم الاطلاع عليه بتاريخ 21-11-2014 .
  7. 1 2 "المرجع النسبي" . مُعرِّف الموارد الموحد (URI): الصيغة العامة . IETF . يناير 2005. القسم 4.2. doi : 10.17487/RFC3986 . RFC 3986. تاريخ الاسترجاع: 22 نوفمبر 2020 . 
  8. 1 2 "أمثلة نموذجية" . مُعرِّف الموارد الموحد (URI): الصيغة العامة . IETF . يناير 2005. القسم 5.4.1. doi : 10.17487/RFC3986 . RFC 3986. تاريخ الاسترجاع: 22 نوفمبر 2020 . 
  9. "دمج المسارات" . مُعرِّف الموارد الموحد (URI): الصيغة العامة . IETF . يناير 2005. القسم 5.2.3. doi : 10.17487/RFC3986 . RFC 3986. تاريخ الاسترجاع : 22 نوفمبر 2020 .