استجابة HTTP 304 في جلسة التتبع

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

المشكلة

في Edge لـ Private Cloud، عند تتبّع واجهة برمجة تطبيقات في واجهة مستخدم Edge، تظهر لك استجابة HTTP 304 في عمود الحالة من نافذة التتبع:

رسائل الخطأ

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

الأسباب المحتملة

في Edge لـ Private Cloud، تحاول واجهة مستخدم Edge تتبُّع خادم وكيل لواجهة برمجة التطبيقات يتم الوصول إليه عن طريق عنوان IP خاص.

تستطيع أداة التتبع في واجهة مستخدم Edge إرسال طلب من واجهة برمجة التطبيقات إلى أي عنوان URL. في سيناريو نشر تتم فيه استضافة واجهة مستخدم Edge مع خدمات داخلية أخرى، قد يسيء مستخدم ضار استخدام أداة التتبُّع لتقديم طلبات إلى الخدمات من خلال عنوان IP خاص، مثل المضيف المحلي أو 127.0.0.1.

في بيئة الإنتاج، عادةً ما تترك الإعداد التلقائي كما هو لمنع المستخدمين من تتبُّع عنوان IP خاص. على سبيل المثال، هذه هي الطريقة التي يتم بها نشر الإصدار العام من واجهة مستخدم Edge.

ومع ذلك، يمكنك إلغاء هذا الإعداد التلقائي في بيئة التطوير أو الاختبار الداخلية للسماح لمطوّري واجهة برمجة التطبيقات بتتبّع أي عنوان IP. عادةً ما تكون بيئة التطوير/الاختبار وراء جدار حماية لا يسمح بالوصول العام.

ملاحظة: كإحدى أفضل الممارسات، يجب ترك الإعدادات التلقائية كما هي من أجل منع تتبُّع الوصول إلى عناوين IP الخاصة، حتى في بيئة تطوير/اختبار، ما لم تواجه موقفًا تطلب فيه تفعيله.

السبب: محاولة الوصول إلى خادم وكيل لواجهة برمجة التطبيقات من خلال عنوان IP خاص

بشكل تلقائي، تمنع واجهة مستخدم Edge الخاصة بخدمة Edge for the Private Cloud المستخدمين من تتبُّع طلبات البيانات من واجهة برمجة التطبيقات التي يتم إجراؤها من خلال عناوين IP الخاصة. تشمل قائمة عناوين IP الخاصة ما يلي:

  • عنوان الاسترجاع (127.0.0.1 أو المضيف المحلي)
  • العناوين المحلية للموقع الإلكتروني (للعناوين IPv4 - 10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16)
  • أي عنوان محلي (أي عنوان يحل محل المضيف المحلي)

على سبيل المثال، يُجري الأمر curl التالي اتصالاً بخادم وكيل لواجهة برمجة التطبيقات باستخدام عنوان IP 127.0.0.1، والذي يُعتبر عنوان IP خاصًا:

curl http://127.0.0.1:9001/myapiproxy

في نافذة التتبُّع لهذا الاستدعاء، ستظهر لك استجابة HTTP 304 حتى إذا عرض الأمر curl بنجاح.

درجة الدقّة

لتفعيل واجهة مستخدم Edge لتتبع عناوين IP الخاصة في Edge للسحابة الخاصة، يجب ضبط الرمز المميز التالي في ui.properties:

conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"

لإعداد هذه السمة:

  1. افتح ملف ui.properties في محرِّر. إذا لم يكن الملف موجودًا، يجب إنشاؤه.
    vi /opt/apigee/customer/application/ui.properties
  2. اضبط السمات التالية على "صحيح":
    conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
  3. احفظ التغييرات في ui.properties.
  4. تأكَّد من أنّ ملف السمات يملكه مستخدم "apigee":
    chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. أعِد تشغيل واجهة مستخدم Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

يمكن لواجهة مستخدم Edge الآن الوصول إلى عناوين IP الخاصة في أداة التتبُّع.

إذا أردت لاحقًا إيقاف تتبُّع الطلبات من خلال عناوين IP خاصة لواجهة المستخدم، يمكنك تعديل ui.properties لضبط السمة false ثم إعادة تشغيل واجهة مستخدم Edge.

لمزيد من المعلومات، يمكنك الاطّلاع على صفحة السماح بوصول واجهة مستخدم Edge إلى عناوين IP المحلية.