أو ربما لاحظت ظهور هذه الرسالة عند إعادة بناء الحاوية:
يتطلب تنزيل قاعدة بيانات MaxMind لـ IP معرف حساب ومفتاح ترخيص.
يرجى تعيين DISCOURSE_MAXMIND_ACCOUNT_ID و DISCOURSE_MAXMIND_LICENSE_KEY. راجع https://meta.discourse.org/t/configure-maxmind-for-reverse-ip-lookups/173941 لمزيد من التفاصيل.
لماذا قد أهتم؟
غالبًا ما يكون من المفيد للمشرفين معرفة مكان تسجيل الدخول من قبل شخص ما لتحديد ما إذا كان الشخص هو من يقول إنه هو (ومكانه) أو لتشخيص مشاكل موقعك. (“أوه، نلاحظ غالبًا مشاكل مع Special-ISP”.)
أيضًا، اعتبارًا من 2.2.0.beta4، يستخدم Discourse هذه المعلومات لإخطار المشرفين إذا تم تسجيل الدخول من موقع جديد. بدون قاعدة بيانات Maxmind، لا يمكن لـ Discourse تقديم هذا الإخطار.
ماذا لو لم أقوم بإعداد حساب MaxMind وتوليد مفتاح ترخيص؟
لن تتمكن من إجراء عمليات بحث عكسية. إذا كانت المشاكل المذكورة أعلاه لا تهمك، فمن المرجح ألا يحدث أي شيء سيء إذا تجاهلت هذا ببساطة.
كيف أقوم بإعداد حساب MaxMind والحصول على معرف حساب ومفتاح ترخيص؟
توليد مفتاح ترخيص في علامة التبويب Manage License Keys في شريط التنقل الأيسر بعد تسجيل الدخول. قم بتوليد مفتاح جديد، وانسخ معرف الحساب ومفتاح الترخيص. إذا فقدته، ستحتاج إلى توليد مفتاح جديد.
بعد ذلك، أضف هذا المفتاح إلى قسم ENV في ملف app.yml الخاص بك بسطر مثل هذا:
لا يدعم التثبيت القياسي IPv6 بالكامل من الصندوق. إذا كان لديك خادم مُهيأ لـ IPv6 وتحتاج إلى معلومات Maxmind لعناوين IPv6، فستحتاج إلى التأكد من أن عنوان IP الفعلي للمستخدم هو ما يصل إلى Discourse، عادةً باستخدام وكيل خارجي يمرر عنوان IP البعيد إلى Discourse. هذا يتطلب خبرة إدارية أكبر مما يوفره التثبيت القياسي.
يعمل من أجلي!
المضحك في الأمر هو أنه لم يشتكِ أحد آخر منذ 3 سنوات! إنها ويكي، لذا يمكنك إصلاحها. سأحاول التحديث عندما أصل إلى جهاز كمبيوتر إذا تمكنت من تذكر ذلك.
حقًا! وقد أمضيت وقتًا طويلاً في إنشائها. لست متأكدًا كيف فاتني أن الرابط كان يعمل بالنسبة لي فقط، ولكني أعتقد أن الاضطرار إلى تسجيل الدخول كان كافيًا لتشتيتي وربما الكثير من الأشخاص الآخرين.
ربما لا داعي لقول ذلك لمعظم الحاضرين هنا، ولكن قد يؤدي استخدام VPN إلى إنشاء المزيد من التنبيهات أكثر من غيره. إنها دفعة للمسؤولين ولكنها لا تشير بالضرورة إلى مستخدم خبيث.
عذرًا،عندما يقوم ديسكورس (Discourse) بإجراء بحث عن عنوان IP (بحث IP عكسي) للوحة الإدارة، هل يعتمد على قاعدة بيانات GeoIP غير متصلة بالإنترنت أم يستعلم من واجهة برمجة تطبيقات (API) خارجية في كل مرة؟شكرًا جزيلاً!!
للسياق، أفضّل التعامل مع عمليات البحث عن عناوين IP دون اتصال بالإنترنت عن طريق توجيه ديسكورس إلى ملف GeoLite2-City.mmdb محلي، بدلاً من استدعاء واجهة برمجة تطبيقات خارجية.
حسنًا، أنا عالق. أعتقد أنني قمت بإعداد كل شيء بشكل صحيح، لكنني أتلقى خطأ 401 عند محاولة تنزيل قواعد بيانات MaxMind.
أنا على تثبيت قياسي، مُستضاف ذاتيًا وحديث.
أنشأت حسابًا على MaxMind، وأضفت مفتاح ترخيص جديد.
قمت بتعديل قسم ENV في ملف app.yml إلى ما يلي:
## مفتاح MaxMind لتحديد الموقع الجغرافي عنوان IP لاستعلام عن عنوان IP
## انظر https://meta.discourse.org/t/-/137387/23 للحصول على التفاصيل
DISCOURSE_MAXMIND_ACCOUNT_ID: [معرف حسابي]
DISCOURSE_MAXMIND_LICENSE_KEY: [مفتاح الترخيص الخاص بي]
ثم قمت بتشغيل ./launcher rebuild app
أثناء إعادة البناء، تم تسجيل هذه الأخطاء “401 غير مصرح به”:
فشل تنزيل قاعدة بيانات MaxMind GeoLite2-City: OpenURI::HTTPError : خطأ 401
فشل تنزيل قاعدة بيانات MaxMind GeoLite2-ASN: OpenURI::HTTPError : خطأ 401
(… وبالطبع، لم تصل أي ملفات قاعدة بيانات إلى مجلد /var/www/discourse/vendor/data)
بناءً على هذا الاقتراح، استخدمت أمرًا وُجد في بوابة مطوري MaxMind — باستخدام نفس بيانات الاعتماد — لتنزيل قاعدة بيانات مباشرة: