خطأ "لا يمكننا اكتشاف ما إذا كان حسابك قد تم إنشاؤه، يرجى التأكد من تفعيل ملفات تعريف الارتباط (cookies)"

مرحباً، أنا عالق مع هذه الرسالة: “لا يمكننا اكتشاف ما إذا كان حسابك قد تم إنشاؤه، يرجى التأكد من تفعيل ملفات تعريف الارتباط (cookies)” كلما حاولت التسجيل. جربت ذلك من متصفحات مختلفة، وروابط اتصال متنوعة (واي فاي، 4ج)، ومن الحاسوب والهاتف الذكي…

إذا حاولت التسجيل عبر رابط دعوة، أحصل على خطأ 403 [“BAD CSRF”].

إلا أن كل شيء يعمل بشكل طبيعي؛ يمكنني تسجيل الدخول باستخدام حساب المسؤول، وإنشاء منشورات، وما إلى ذلك.

لدي تكوين مجلد فرعي، وأستخدم وكيل عكسي من المضيف الرئيسي لإعادة توجيه جميع الطلبات من /forum، ويوجه وكيلي العكسي عنوان IP كما هو متوقع.

هل تستخدم إصدارًا قديمًا من Discourse؟

من المرجح أن إعدادات الوكيل (proxy) لديك معطلة.

أنا أستخدم أحدث إصدار (2.4.0.beta9) وإعدادات nginx الخاصة بي هي:

location /forum {
    expires 1m;
    add_header Cache-Control "public";

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;

    resolver 127.0.0.11;
    set $forum "http://xxxxxx";
    proxy_pass $forum;
    proxy_intercept_errors on;

    proxy_redirect off;
    
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

لماذا يعمل كل شيء باستثناء تسجيل المستخدمين إذا كانت المشكلة في إعدادات الوكيل؟

تحتاج إلى

proxy_set_header X-Forwarded-Proto https;

شكرًا لك، تم حل المشكلة باستخدام X-Forwarded-Proto :slight_smile: