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

أنت تطّلع على مستندات 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 على مستوى Message Processor.

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

خصائص عنوان 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.

الطلب gclid الصادر استنادًا إلى قيمة conf/http.properties+HTTPHeader.test-header=
<Blank> allowDuplicates multiValued allowDuplicates, multiValued (DEFAULT)
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 من هذا النوع على معالجات الرسائل، وذلك باستخدام الرمز المميّز المقابل وفقًا للبنية الموضّحة في كيفية ضبط 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. يتم ضبط السمة على فارغة، ما يعني أنّه تم استبدال القيمة (وهذا هو عنوان يتضمّن إعدادات حالية) لعدم السماح بالعناوين المكرّرة والقِيَم المتعدّدة. وهذا يعني أنّه لا يُسمح لك بإرسال عنوان 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 لعنوان معيّن بنجاح للسماح بظهور النُسخ المكرّرة في معالجات الرسائل.

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

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

  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
    
  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 محدّد في معالجي الرسائل، وذلك باستخدام الرمز المميّز المقابل وفقًا للبنية الموضّحة في كيفية ضبط 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. تم ضبط السمة على فارغة، ما يعني أنّه تم استبدال القيمة ليصبح الخيار "لا" للسماح برؤوس مكرّرة وقيم متعدّدة. وهذا يعني أنّه لا يُسمح لك بإرسال عنوان 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. في جهاز "معالج الرسائل"، ابحث عن السمة 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 في "معالج الرسائل" بنجاح، سيعرِض الأمر أعلاه القيمة الجديدة في ملف http.properties.
  3. في ما يلي نموذج النتيجة من الأمر أعلاه بعد إيقاف allowDuplicates:

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

    السيناريو 1: رأس Expires (العنوان الذي يتضمّن إعدادات حالية)

    /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) بنجاح في "معالج الرسائل".
  5. إذا استمر ظهور القيمة القديمة للمستودع HTTPHeader.Expires (or HTTPHeader.myheader)، تأكَّد من اتّباعك جميع الخطوات الموضّحة في مقالة ضبط allowDuplicates والقيم المتعدّدة للرؤوس بشكل صحيح. إذا فاتتك أي خطوة، فكرر جميع الخطوات مرة أخرى بشكل صحيح.

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

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