إعدادات الوكيل (Proxy)

إعدادات تشغيل OpenReplay خلف وكيل مثل NGINX أو Apache2.

إعدادات الوكيل (Proxy)

استضافة OpenReplay مع تطبيقات أخرى باستخدام وكيل عكسي (Reverse Proxy)

Section titled استضافة OpenReplay مع تطبيقات أخرى باستخدام وكيل عكسي (Reverse Proxy)

عند تشغيل OpenReplay على جهاز ما، فإنه يستخدم المنفذ 80/443 لإتاحة التطبيق. لكن عند استخدامك لوكيل عكسي، يمكن تهيئة OpenReplay لاستخدام منفذ آخر للوصول إلى التطبيق. فيما يلي الخطوات الخاصة بكيفية القيام بذلك:

  1. عدّل ملف الإعدادات:
openreplay -e
  1. غيّر قسم إعدادات nginx:
ingress-nginx: &ingress-nginx
  controller:
	...
	...
    service:
      externalTrafficPolicy: "Local"
      ports:
        http: 880   # Change this port for http
        https: 8443 # Change this port for https
  1. احفظ الإعدادات واخرج منها باستخدام :wq حتى يتمكن OpenReplay من إعادة تحميل الإعدادات.

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

تأكد من أن الوكيل الخاص بك يرسل ترويستي X-Forwarded-For وX-Forwarded-Proto. يجب أيضًا تفعيل SSL لكي يعمل OpenReplay. أما بقية الإعدادات فينبغي أن تبدو على النحو التالي:

location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass http://1.2.3.4:880; # replace with OpenReplay instance IP
    }

تأكد من تفعيل وحدات proxy وproxy_http وproxy_html. ويجب أيضًا تهيئة SSL، وينبغي أن تكون بقية الإعدادات مشابهة لما يلي:

<VirtualHost *:443>
    ProxyPass / http://1.2.3.4:880 <!-- replace with instance IP -->
    RequestHeader set X-Forwarded-Proto expr=%{REQUEST_SCHEME}
    # SSL + other config here
</VirtualHost>

نقاط النهاية العامة (Public endpoints)

Section titled نقاط النهاية العامة (Public endpoints)

في حال كنت تحمي نسخة OpenReplay الخاصة بك باستخدام وكيل، تأكد من أن نقاط النهاية أدناه يمكن الوصول إليها بشكل عام حتى يعمل OpenReplay بشكل صحيح.

نقطة النهايةالوصفالمصدر
/ingestلاستقبال الأحداث والتسجيلات الواردة من تطبيقكتطبيقك (تطبيقاتك) الخاضع للتتبّع (إذا كان متاحًا للعموم فيجب أن تكون نقطة النهاية هذه عامة أيضًا)
/ws-assistلإعادة تشغيل الجلسات المباشرة مع المستخدمين النهائيين (WebSocket)تطبيقك (تطبيقاتك) الخاضع للتتبّع (إذا كان متاحًا للعموم فيجب أن تكون نقطة النهاية هذه عامة أيضًا)
/apiللمصادقة وجلب الجلسات والمشاريع وبيانات RBAC وبيانات الحسابلوحة تحكم OpenReplay
/v2/apiللبحث والتحليلات وإعادة تشغيل الجلسات والتصفح المشتركلوحة تحكم OpenReplay
/spotsلسحب مقاطع فيديو spot من تخزين الكائناتلوحة تحكم OpenReplay
/mobsلسحب عمليات إعادة تشغيل الجلسات من تخزين الكائناتلوحة تحكم OpenReplay
/sessions-assetsلسحب أوراق الأنماط والخطوط المخزّنة مؤقتًا من تخزين الكائناتلوحة تحكم OpenReplay
/staticلسحب البيانات المتعلقة بجلسات التصفح المشتركلوحة تحكم OpenReplay
/recordsلسحب تسجيلات التصفح المشترك من تخزين الكائناتلوحة تحكم OpenReplay
/integrationsلجلب السجلات من عمليات التكامل مع جهات خارجية (مثل Sentry أو Datadog)لوحة تحكم OpenReplay
/sourcemapsلرفع ملفات sourcemapsواجهة سطر أوامر Sourcemaps
/spotلجلب البيانات المتعلقة بتسجيلات spotإضافة Spot لمتصفح Chrome
/scriptمفيدة إذا كنت ترغب في تقديم ملفات openreplay-*.js من إعداداتك الخاصة (وإلا فإنها تعود افتراضيًا إلى شبكة توصيل المحتوى CDN الخاصة بـ OpenReplay)تطبيقك (تطبيقاتك) الخاضع للتتبّع

إذا كان لديك أي أسئلة حول هذه العملية، فلا تتردد في التواصل معنا عبر Slack الخاص بنا أو الاطلاع على المنتدى.