ضبط معالجات الرسائل للسماح بالعناوين المكررة

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

وفقًا لمواصفات HTTP RFC 7230، القسم 3.2.2: ترتيب الحقول، تتوقّع Apigee Edge ألا يتضمّن طلب HTTP من العميل أو استجابة HTTP من خادم الخلفية العنوان نفسه الذي يتم تمريره أكثر من مرة بالقيم نفسها أو بقيم مختلفة، ما لم يكن العنوان المحدّد يتضمّن استثناءً ويُسمح بتكراره.

تسمح Apigee Edge تلقائيًا بتمرير القيم المكرّرة والمتعدّدة إلى معظم عناوين HTTP. ومع ذلك، لا يسمح ببعض العناوين المُدرَجة في العناوين التي لا يُسمح بتكرارها أو استخدام قيم متعددة لها. ولذلك:

  • ستتلقّى الرمز 400 Bad Request مع رمز الخطأ protocol.http.DuplicateHeader إذا أرسل العميل طلب HTTP يتضمّن عنوانًا معيّنًا أكثر من مرة أو يتضمّن قيمًا متعدّدة لعناوين HTTP التي لا يُسمح بأن تتضمّن قيمًا مكرّرة أو متعدّدة في Apigee Edge.
  • وبالمثل، سيظهر لك الخطأ 502 Bad Gateway مع رمز الخطأ protocol.http.DuplicateHeader إذا أرسل خادم الخلفية استجابة HTTP تتضمّن عنوانًا معيّنًا أكثر من مرة أو تتضمّن قيمًا متعدّدة لعناوين HTTP التي لا يُسمح بتكرارها أو تضمين قيم متعدّدة لها في Apigee Edge.

الحلّ المقترَح لمعالجة هذه الأخطاء هو إصلاح تطبيق العميل وخادم الخلفية لعدم إرسال عناوين مكرّرة والالتزام بالمواصفات RFC 7230، القسم 3.2.2: ترتيب الحقول كما هو موضّح في أدلة تحديد المشاكل وحلّها التالية:

ومع ذلك، قد تحتاج في بعض الحالات إلى إضافة استثناء لتضمين التكرارات والقيم المتعددة لبعض عناوين HTTP. في مثل هذه الحالات، يمكنك السماح بتكرار العناوين وقيم متعدّدة لعنوان HTTP محدّد من خلال ضبط السمة HTTPHeader.HEADER_NAME على مستوى "معالج الرسائل".

يقدّم هذا المستند معلومات حول هذه السمة، ويوضّح كيفية تفعيلها لتجنُّب الأخطاء المذكورة أعلاه، كما يقدّم أفضل الممارسات المتعلّقة بها.

سمات عنوان HTTP للسماح بالتكرارات والقيم المتعددة

توفّر Apigee Edge السمتَين التاليتَين للتحكّم في سلوك السماح بالتكرار والقيم المتعددة لعناوين HTTP. يُرجى العِلم أنّه لا يمكن ضبط هذه الإعدادات إلا على "معالجات الرسائل" باستخدام بنية الرمز المميّز الموضّحة في مقالة كيفية ضبط Edge.

اسم السمة الوصف القيم المسموح بها
HTTPHeader.ANY

تشير هذه السمة إلى ما إذا كان مسموحًا بتكرار القيم أو استخدام قيم متعددة لجميع عناوين HTTP، بما في ذلك العناوين المخصّصة التي يتم إرسالها كجزء من طلب HTTP الذي يقدّمه العميل أو استجابة HTTP التي يرسلها خادم الخلفية إلى Apigee Edge.

القيمة التلقائية:

multiValued, allowDuplicates,

  1. blank: لا يُسمح بتكرار قيم عناوين HTTP أو استخدام قيم متعددة لها.
  2. multiValued: قسِّم العنوان المتعدّد القيم إلى عناوين متعدّدة. يُسمح بقيم متعدّدة لعناوين HTTP، ولكن لا يُسمح بالتكرار. تم تفعيل القيمة multiValued، ما يعني أنّه سيتم تحويل test-header=a,b إلى test-header=a وtest-header=b.
  3. allowDuplicates: يسمح بعناوين HTTP متعددة (مكرّرة) تحمل الاسم نفسه.
  4. multiValued, allowDuplicates: يُسمح باستخدام قيم متعددة ومكرّرة لعناوين HTTP.

HTTPHeader.HEADER_NAME

تُستخدَم هذه السمة لتجاوز سلوك عنوان معيّن من السلوك المحدّد بواسطة HTTPHeader.ANY.

مثل ما سبق.

العناوين التي لا يُسمح بأن تتضمّن قيمًا مكرّرة ومتعدّدة

كما هو موضّح سابقًا، تسمح Apigee Edge بالتكرارات والقيم المتعددة لمعظم عناوين HTTP تلقائيًا. ويرجع ذلك إلى أنّ السمة HTTPHeader.ANY تم ضبطها على القيمة multiValued, allowDuplicates.

تمت الكتابة فوق الإعدادات

بالنسبة إلى بعض العناوين المحدّدة، يتم استبدال الإعداد التلقائي باستخدام إحدى الطرق التالية:

  • HTTPHeader.HEADER_NAME=multiValued, allowDuplicates

    لا يغيّر هذا الضبط السلوك التلقائي. أي أنّ العنوان المحدّد يُسمح له باحتواء قيم مكرّرة ومتعدّدة

    .
  • HTTPHeader.HEADER_NAME=

    يؤدي هذا الإعداد إلى تغيير السلوك التلقائي. أي أنّ العنوان المحدّد لا يُسمح بأن يتضمّن قيمًا مكرّرة ومتعدّدة.

تحديد العناوين التي لا يُسمح بأن تتضمّن قيمًا مكرّرة ومتعدّدة

يوضّح هذا القسم كيفية تحديد ما يلي:

  • العناوين المحدّدة التي لا يُسمح بأن تتضمّن تكرارات وقيمًا متعدّدة في إعداد Apigee Edge Private Cloud،
  • العناوين المحدّدة التي تتضمّن إعدادات حالية
  1. على جهاز "معالج الرسائل"، ابحث عن السمة HTTPHeader. في الدليل /opt/apigee/edge-message-processor/conf كما هو موضّح أدناه:

    grep -ri "HTTPHeader." /opt/apigee/edge-message-processor/conf
    

    نموذج الناتج:

    # grep -ri "HTTPHeader" /opt/apigee/edge-message-processor/conf
    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.ANY=allowDuplicates, multiValued
    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Connection=allowDuplicates, multiValued
    … <snipped>
    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Host=
    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Expires=
    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Date=allowDuplicates
    …
    <snipped>
  2. كما هو موضّح في قسم تمت الكتابة فوق الإعدادات، لاحظ المعلومات التالية في نموذج الناتج أعلاه:
    1. يتم استبدال عنوان HTTP Connection ، ولكن يُسمح بأن يتضمّن نسخًا مكرّرة وقيمًا متعدّدة
    2. تتم الكتابة فوق عناوين HTTP Host وExpires ، ولا يُسمح بأن تتضمّن نسخًا مكرّرة وقيمًا متعدّدة
    3. يتم استبدال عنوان HTTP Date ويُسمح بأن يتضمّن نسخًا مكرّرة، ولكن لا يُسمح بأن يتضمّن قيمًا متعدّدة
    4. يُشار إلى جميع العناوين التي تظهر هنا (Connection وHost وExpires وDate في المثال أعلاه) باسم العناوين التي تتضمّن إعدادات مُسبَقة في هذا المستند.

سلوك Apigee Edge

يوضّح الجدول التالي سلوك Apigee Edge عند إرسال العناوين كنسخ مكرّرة وبقيم متعدّدة استنادًا إلى طريقة ضبط خصائص HTTPHeader في "معالجات الرسائل" مع مثال على HTTPHeader من test-header.

طلب عناوين HEADERS الصادرة استنادًا إلى قيمة conf/http.properties+HTTPHeader.test-header=
<Blank> allowDuplicates multiValued allowDuplicates وmultiValued (تلقائي)
test‑header=a,b test‑header=a,b test‑header=a,b

protocol.http.
DuplicateHeader

نقسم test-header=a,b داخليًا إلى:

  • test-header=a، و
  • test-header=b،

ثم يتم عرض الخطأ DuplicateHeader.

test‑header=a,b

نقسم test-header=a,b داخليًا إلى:

  • test-header=a، و
  • test-header=b،

ولكن بعد ذلك يتم إرسال النموذج الأصلي إلى الوجهة.

test‑header=a
test‑header=b
protocol.http.
DuplicateHeader
test‑header=a
test‑header=b
protocol.http.
DuplicateHeader
test‑header=a
test‑header=b

قبل البدء

قبل اتّباع الخطوات الواردة في هذا المستند، تأكَّد من فهم كيفية ضبط الخصائص في Edge على Private Cloud، كما هو موضّح في كيفية ضبط Edge.

ضبط allowDuplicates وقيم متعدّدة للعناوين

كما هو موضّح في سمات عناوين HTTP للسماح بالتكرار والقيم المتعددة، تشير قيمة السمة HTTPHeader.ANY = allowDuplicates, multiValued إلى أنّه يُسمح لجميع العناوين بتضمين قيم متكررة ومتعددة في Apigee Edge. ومع ذلك، هناك بعض العناوين التي يتم استبدال قيمها بشكل صريح لعدم السماح بتكرار العناوين أو القيم المتعددة باستخدام السمة HTTPHeader.HEADER_NAME.

يوضّح هذا القسم كيفية ضبط السمة HTTPHeader.HEADER_NAME للسماح بالتكرارات والقيم المتعددة لأي من عناوين HTTP هذه في &quot;معالجات الرسائل&quot;، وذلك باستخدام الرمز المميز المقابل وفقًا لبنية الجملة الموضّحة في كيفية ضبط Edge.

في هذا القسم، سنستخدم Expiresmyheader) كمثال على عنوان نريد السماح فيه بالتكرار والقيم المتعددة كما هو موضّح أدناه:

  1. حدِّد القيمة الحالية للسمة HTTPHeaderHEADER_NAME للتأكّد من أنّها غير مفعّلة حاليًا للسماح بالقيم المكرّرة والمتعددة باستخدام الأمر التالي:
    grep -ri "HTTPHeader.HEADER_NAME" /opt/apigee/edge-message-processor/conf
    

    على سبيل المثال، إذا كنت تحاول ضبط السمة للعنوان Expires، تحقّق من القيمة الحالية لرمز السمة HTTPHeader.Expires في &quot;معالج الرسائل&quot; (Message Processor):

    grep -ri "HTTPHeader.Expires" /opt/apigee/edge-message-processor/conf
    

    تؤدي مخرجات الأمر أعلاه إلى أحد الإجراءات التالية:

    1. يتم ضبط السمة على قيمة فارغة، ما يعني أنّه يتم استبدال القيمة (وهذا عنوان يتضمّن إعدادات حالية) لعدم السماح بعناوين مكرّرة وقيم متعدّدة. أي أنّه لا يُسمح لك بإرسال العنوان Expires أكثر من مرة كجزء من طلب HTTP أو استجابة HTTP إلى Apigee.
    2. إذا لم يتم تسجيل أيّ نتائج للموقع المحدّد، يعني ذلك أنّه لم تتم الكتابة فوق القيمة (وهذا ليس عنوانًا يتضمّن إعدادات حالية). وهذا يعني أنّه يمكن إرسال العنوان المحدّد أكثر من مرة (يُسمح بالتكرار) كجزء من طلب HTTP أو استجابة HTTP إلى Apigee Edge.
    3. إذا تم ضبط السمة بالقيمة allowDuplicates, multiValued، يعني ذلك أنّه تم تجاهل القيمة بشكل صريح (وهذا هو العنوان الذي يتضمّن إعدادًا مسبقًا). وهذا يعني أنّه يمكن إرسال العنوان المحدّد أكثر من مرة (يُسمح بالتكرار) كجزء من طلب HTTP أو استجابة HTTP إلى Apigee.

    نموذج لناتج أمر البحث:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Expires=

    يوضّح نموذج الناتج أعلاه أنّ السمة HTTPHeader.Expires تم ضبطها على قيمة فارغة. هذا يعني أنّه سيتم الكتابة فوق السمة لتصبح لا تسمح بالقيم المكرّرة أو المتعددة للعنوان Expires.

  2. إذا لاحظت أنّه تم تجاهل السمة المقابلة للعنوان المحدّد بشكل صريح من أجل عدم السماح بقيم مكرّرة أو متعدّدة كما هو موضّح في مثال الناتج أعلاه، عندها فقط اتّبِع الخطوات التالية. إذا لم يتم استبدالها بشكل صريح، فتخطَّ بقية الخطوات في هذا القسم.
  3. تعديل. إذا لم يكن لديك حساب، يمكنك إنشاؤه باتّباع الخطوات التالية:
    /opt/apigee/customer/application/message-processor.properties

    على سبيل المثال، لفتح الملف باستخدام vi، أدخِل ما يلي:

    vi /opt/apigee/customer/application/message-processor.properties
    
  4. أضِف سطرًا بالتنسيق التالي:
    conf_http_HTTPHeader.Expires=allowDuplicates, multiValued
  5. احفظ التغييرات.
  6. تأكَّد من أنّ ملف الخصائص يملكه المستخدم apigee. إذا لم يكن كذلك، شغِّل الأمر التالي:

    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  7. أعِد تشغيل "معالج الرسائل":

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    

    لإعادة التشغيل بدون التأثير في عدد الزيارات، يُرجى الاطّلاع على إعادة التشغيل المتتالي لـ "معالجات الرسائل" بدون التأثير في عدد الزيارات.

  8. إذا كان لديك أكثر من معالج رسائل واحد، كرِّر الخطوات أعلاه على جميع معالجات الرسائل.

التحقّق من ضبط العنوان على أن يتضمّن قيمًا مكرّرة ومتعددة

يوضّح هذا القسم كيفية التأكّد من أنّه تم تعديل السمة HTTPHeader.HEADER_NAME لرأس معيّن بنجاح للسماح بالتكرار في &quot;معالجات الرسائل&quot;.

سنستخدم Expires كعنوان مثال ونتحقّق مما إذا تم تعديل السمة المقابلة HTTPHeader.Expires.

على الرغم من استخدام الرمز المميّز conf_http_HTTPHeader.Expires لتعديل القيمة في &quot;معالج الرسائل&quot;، عليك التأكّد مما إذا تم ضبط السمة الفعلية HTTPHeader.Expires بالقيمة الجديدة.

  1. على جهاز "معالج الرسائل"، ابحث عن السمة HTTPHeader.HEADER_NAME في الدليل /opt/apigee/edge-message-processor/conf وتحقّق مما إذا تم ضبطها بالقيمة الجديدة كما هو موضّح أدناه:
    grep -ri "HTTPHeader.HEADER_NAME" /opt/apigee/edge-message-processor/conf
    

    على سبيل المثال، إذا أردت التأكّد من ضبط السمة HTTPHeader.Expires على القيمة الجديدة، نفِّذ الأمر التالي:

    grep -ri "HTTPHeader.Expires" /opt/apigee/edge-message-processor/conf
    
  2. إذا تم ضبط القيمة الجديدة بنجاح لـ HTTPHeader.HEADER_NAME على "معالج الرسائل"، سيعرض الأمر أعلاه القيمة الجديدة في الملف http.properties.
  3. في ما يلي نموذج للنتيجة من الأمر أعلاه بعد ضبط allowDuplicates وmultiValued:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Expires=allowDuplicates, multiValued
  4. في مثال الناتج أعلاه، لاحظ أنّه تم ضبط السمة HTTPHeader.Expires باستخدام القيمة الجديدة allowDuplicates, multiValued في http.properties. يشير ذلك إلى أنّه تم ضبط السلوك للسماح بالتكرارات والقيم المتعددة في HTTPHeader بنجاح على "معالج الرسائل".
  5. إذا كنت لا تزال ترى القيمة القديمة للسمة HTTPHeader.HEADER_NAME، تأكَّد من أنّك اتّبعت جميع الخطوات الموضّحة في ضبط allowDuplicates والقيم المتعدّدة للعناوين بشكلٍ صحيح. إذا فاتتك أي خطوة، كرِّر جميع الخطوات مرة أخرى بشكل صحيح.

    تأكَّد من أنّ الخوادم الوكيلة تعمل على النحو المتوقّع، خاصةً إذا كان هناك منطق وظيفي للحصول على العناوين وضبطها في الخادم الوكيل.

  6. إذا كنت لا تزال غير قادر على تعديل السمة، يُرجى التواصل مع فريق دعم Apigee Edge.

إيقاف allowDuplicates للعناوين

يوضّح هذا القسم كيفية ضبط السمة HTTPHeader.{Headername} على عدم السماح بالتكرارات والقيم المتعدّدة لعنوان HTTP معيّن في &quot;معالجات الرسائل&quot;، وذلك باستخدام الرمز المميز المناسب وفقًا للصيغة الموضّحة في كيفية ضبط Edge.

في هذا القسم، سنستخدم Expiresmyheader) كعنوان مثال لا نريد السماح بتكراره كما هو موضّح أدناه:

  1. حدِّد القيمة الحالية للسمة HTTPHeaderHEADER_NAME للتأكّد من أنّه لم يتم إيقافها من قبل للسماح بالقيم المكرّرة والمتعدّدة باستخدام الأمر التالي:
    grep -ri "HTTPHeader.HEADER_NAME" /opt/apigee/edge-message-processor/conf
    

    على سبيل المثال، إذا كنت تحاول ضبط السمة للعنوان Expires، تحقّق من القيمة الحالية لرمز السمة HTTPHeader.Expires في "معالج الرسائل":

    grep -ri "HTTPHeader.Expires" /opt/apigee/edge-message-processor/conf
    

    تؤدي مخرجات الأمر أعلاه إلى أحد الإجراءات التالية:

    1. يتم ضبط الخاصية على قيمة فارغة، ما يعني أنّه سيتم استبدال القيمة بـ NOT للسماح بتكرار العناوين وقيم متعددة. أي أنّه لا يُسمح لك بإرسال العنوان Expires أكثر من مرة كجزء من طلب HTTP أو استجابة HTTP إلى Apigee.
    2. إذا لم تكن هناك نتائج للسمة المحدّدة، يعني ذلك أنّه لم يتم استبدال القيمة، وهذا عنوان NOT يتضمّن إعدادًا مسبقًا. وهذا يعني أنّه يمكن إرسال العنوان المحدّد أكثر من مرة (يُسمح بالتكرار) كجزء من طلب HTTP أو استجابة HTTP إلى Apigee Edge.
    3. إذا تم ضبط السمة بالقيمة allowDuplicates, multiValued، يعني ذلك أنّه تمت الكتابة فوق القيمة بشكل صريح وأنّ هذا الإعداد متوفّر. ومع ذلك، يعني هذا أنّه يمكن إرسال العنوان المحدّد أكثر من مرة (يُسمح بالتكرار) كجزء من طلب HTTP أو استجابة HTTP إلى Apigee.

    مثال على الناتج رقم 1

    النتيجة النموذجية رقم 1 لأمر البحث:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Expires=allowDuplicates, multiValued

    يوضّح نموذج الناتج أنّ السمة HTTPHeader.Expires مضبوطة على القيمة allowDuplicates, multiValued. يعني ذلك أنّه سيتم الكتابة فوق الخاصية للسماح بقيم مكرّرة أو متعدّدة للعنوان Expires.

    مثال على الناتج 2

    نموذج للأمر والنتيجة رقم 2 لأمر البحث

    grep -ri "HTTPHeader.myheader" /opt/apigee/edge-message-processor/conf
    

    لا يعرض نموذج الناتج أي ناتج، ما يعني أنّه تم ضبط السمة HTTPHeader.myheader على allowDuplicates, multiValued تلقائيًا. يعني هذا أيضًا أنّه لن تتم الكتابة فوق السمة للعنوان myheader،

  2. إذا لاحظت أحد الإجراءات التالية، نفِّذ بقية الخطوات في هذا القسم:
    1. يتم استبدال السمة التي تتوافق مع العنوان المحدّد للسماح بالتكرارات والقيم المتعدّدة كما هو الحال في نموذج الناتج 1 أعلاه (العنوان الذي يتضمّن إعدادًا مسبقًا).
    2. ما مِن نتائج للموقع المرتبط بالعنوان المحدّد كما في نموذج النتائج 2 أعلاه (ليس عنوانًا يتضمّن إعدادًا مسبقًا)

    بخلاف ذلك، تخطَّ بقية الخطوات في هذا القسم.

  3. عدِّل الملف التالي. إذا لم يكن متوفّرًا، يمكنك إنشاؤه.
    /opt/apigee/customer/application/message-processor.properties

    على سبيل المثال، لفتح الملف باستخدام vi، أدخِل ما يلي:

    vi /opt/apigee/customer/application/message-processor.properties
    
  4. أضِف سطرًا بالتنسيق التالي إلى ملف السمات:

    الإعدادات الحالية

    السيناريو 1: عنوان يتضمّن إعدادات حالية:

    conf_http_HTTPHeader.Expires=

    ما مِن إعدادات حالية

    السيناريو 2: ليس عنوانًا يتضمّن إعدادات حالية:

    conf/http.properties+HTTPHeader.myheader=
  5. احفظ التغييرات.
  6. تأكَّد من أنّ ملف الخصائص يملكه المستخدم apigee. إذا لم يكن كذلك، نفِّذ ما يلي:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  7. أعِد تشغيل "معالج الرسائل":
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    

    لإعادة التشغيل بدون التأثير في عدد الزيارات، يُرجى الاطّلاع على إعادة التشغيل المتتالي لـ "معالجات الرسائل" بدون التأثير في عدد الزيارات.

  8. إذا كان لديك أكثر من "معالج رسائل" واحد، كرِّر الخطوات أعلاه على جميع "معالجات الرسائل".

التحقّق من إعداد العنوان لعدم السماح بالتكرارات والقيم المتعددة

يوضّح هذا القسم كيفية التأكّد من أنّه تم تعديل السمة HTTPHeader.HEADER_NAME لعنوان معيّن بنجاح، وذلك لعدم السماح بتكرارها في "معالجات الرسائل".

سنستخدم Expiresmyheader) كعنوان مثال وسنتحقّق مما إذا تم تعديل السمة المقابلة HTTPHeader.ExpiresHTTPHeader.myheader).

  1. على جهاز Message Processor، ابحث عن السمة HTTPHeader.HEADER_NAME في الدليل /opt/apigee/edge-message- processor/conf وتحقّق مما إذا تم ضبطها بالقيمة الجديدة كما هو موضح أدناه:

    grep -ri "HTTPHeader.HEADER_NAME" /opt/apigee/edge-message-processor/conf
    

    على سبيل المثال، إذا أردت التحقّق من ضبط السمة HTTPHeader.Expires على القيمة الجديدة، يمكنك تنفيذ الأمر التالي:

    الإعدادات الحالية

    grep -ri "HTTPHeader.Expires" /opt/apigee/edge-message-processor/conf
    

    ما مِن إعدادات حالية

    grep -ri "HTTPHeader.myheader" /opt/apigee/edge-message-processor/conf
    
  2. إذا تم ضبط قيمة عنوان HTTP الجديد بنجاح على HTTPHeader.HEADER_NAME I في &quot;معالج الرسائل&quot;، سيعرض الأمر أعلاه القيمة الجديدة في الملف http.properties.
  3. في ما يلي مثال على النتيجة التي ستحصل عليها من الأمر أعلاه بعد إيقاف allowDuplicates:

    الإعدادات الحالية

    السيناريو 1: عنوان انتهاء الصلاحية (عنوان يتضمّن إعدادًا مسبقًا)

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.Expires=

    ما مِن إعدادات حالية

    السيناريو 2: عنوان myheader (ليس عنوانًا يتضمّن إعدادات مسبقة)

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPHeader.myheader=
  4. في مثال الناتج أعلاه، لاحظ أنّه تم ضبط السمة HTTPHeader.Expires ( وHTTPHeader.myheader ) بالقيمة الجديدة {blank} في http.properties. يشير ذلك إلى أنّه تم إيقاف السلوك الذي يسمح بتكرار القيم والقيم المتعددة لعنوان HTTP المحدّد Expiresmyheader) بنجاح في &quot;معالج الرسائل&quot;.
  5. إذا كنت لا تزال ترى القيمة القديمة للسمة HTTPHeader.Expires (or HTTPHeader.myheader)، تأكَّد من اتّباع جميع الخطوات الموضّحة في ضبط allowDuplicates والقيم المتعدّدة للعناوين بشكل صحيح. إذا فاتتك أي خطوة، كرِّر جميع الخطوات مرة أخرى بشكل صحيح.

    تأكَّد من أنّ الخوادم الوكيلة تعمل على النحو المتوقّع، خاصةً إذا كان هناك منطق وظيفي للحصول على العناوين وضبطها في الخادم الوكيل.

  6. إذا لم تتمكّن من تعديل الموقع، يُرجى التواصل مع فريق دعم Apigee Edge.