هذا دليل #مرجع لوصف جميع إعدادات الموقع المخفية المتاحة.
مستوى المستخدم المطلوب: المسؤول
إعدادات الموقع المخفية في Discourse هي خيارات تكوين متقدمة غير متاحة عبر واجهة المسؤول القياسية. توفر هذه الإعدادات مرونة إضافية لتخصيص وظائف مثيل Discourse الخاص بك.
للحصول على معلومات إضافية حول تعديل إعدادات الموقع المخفية، راجع: تفعيل إعدادات الموقع المخفية.
فيما يلي جدول مرجعي لجميع إعدادات الموقع المخفية المتاحة في Discourse
الأساسيات
إعدادات تساعدك على ضبط الجوانب الأساسية لمثيل Discourse الخاص بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| max_category_nesting | integer | يحدد الحد الأقصى لعدد مستويات التداخل المسموح بها للفئات. | 2 |
| enable_mobile_theme | boolean | يفعل سمة مخصصة للأجهزة المحمولة. قم بالتعطيل لاستخدام ورقة تنسيق متجاوبة عبر جميع الأجهزة. | TRUE |
| enable_upload_debug_mode | boolean | يفعل تسجيل مفصل للعمليات، وهو مفيد لتصحيح أخطاء مشاكل التحميل. | FALSE |
| default_theme_id | integer | معرف السمة الافتراضي المستخدم للمستخدمين الجدد والمستخدمين المجهولين. | -1 |
| enable_badge_sql | boolean | يسمح باستخدام SQL لتحديد استعلامات الشارات مباشرة داخل واجهة المسؤول. | FALSE |
| vapid_public_key_bytes | string | يخزن المفتاح العام المستخدم في مصادقة VAPID، وهو ضروري لإرسال إشعارات الويب الدافعة (Web Push Notifications). | “” |
| vapid_public_key | string | المفتاح العام المستخدم لمصادقة VAPID لإشعارات الويب الدافعة. | “” |
| vapid_private_key | string | المفتاح الخاص المستخدم لمصادقة VAPID لإشعارات الويب الدافعة. | “” |
| vapid_base_url | string | عنوان URL الأساسي المهيأ لـ VAPID لتأكيد هوية الخادم في إشعارات الويب الدافعة. | “” |
| enable_passkeys | boolean | يفعل استخدام مفاتيح المرور (passkeys) القائمة على WebAuthn لمصادقة المستخدم الآمنة دون كلمات مرور. | TRUE |
| verbose_upload_logging | boolean | يفعل السجلات التفصيلية لأنشطة عملية التحميل، وهو مفيد لتحديد وتشخيص مشاكل تحميل الملفات. | FALSE |
| verbose_auth_token_logging | boolean | يفعل تسجيل مفصل لعمليات رمز المصادقة. | FALSE |
| max_suspicious_distance_km | integer | يحدد الحد الأقصى للمسافة بالكيلومترات بين عناوين IP المتتالية لتسجيل الدخول لاعتباره مشبوهًا. | 100 |
| discourse_connect_csrf_protection | boolean | يفعل حماية CSRF لمصادقة DiscourseConnect. | TRUE |
| invites_per_page | integer | عدد الدعوات المعروضة في كل صفحة على صفحة الدعوات. | 40 |
| max_notifications_per_user | integer | الحد الأقصى لعدد الإشعارات التي يمكن أن يمتلكها المستخدم قبل حذف الأقدم تلقائيًا. | 10000 |
| max_bookmarks_per_user | integer | الحد الأقصى لعدد الإشارات المرجعية التي يمكن للمستخدم إنشاؤها. | 2000 |
النشر
تخصيص كيفية عمل النشر داخل مثيل Discourse الخاص بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| show_copy_button_on_codeblocks | boolean | أضف زرًا إلى كتل الكود لنسخ محتوى الكتلة إلى حافظة المستخدم | TRUE |
| disable_watched_word_checking_in_user_fields | boolean | يعطل فحص الكلمات المراقبة في حقول المستخدم | FALSE |
| max_draft_length | integer | يحدد الحد الأقصى للطول المسموح به للمسودات | 150000 |
| max_drafts_per_user | integer | الحد الأقصى لعدد المسودات التي يمكن أن يمتلكها المستخدم | 10000 |
| group_pm_user_limit | integer | الحد الأقصى لعدد المستخدمين الذين يمكن تضمينهم في رسالة خاصة جماعية | 1000 |
البريد الإلكتروني
إدارة كيفية إرسال واستقبال رسائل البريد الإلكتروني من منصة Discourse الخاصة بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| bounce_score_erode_on_send | float | يقلل من درجة الارتداد في كل مرة يتم فيها إرسال بريد إلكتروني، مما يسمح بالتعافي الأسرع من حالات الارتداد. | 0.1 |
| email_custom_template | string | قالب HTML مخصص لرسائل البريد الإلكتروني. يُستخدم إذا كان يجب تجاوز الافتراضي. | “” (فارغ) |
| email_custom_css | string | CSS مخصص لتنسيق رسائل البريد الإلكتروني. يُستخدم إذا كان يجب تجاوز الافتراضي. | “” (فارغ) |
| email_custom_css_compiled | string | النسخة المترجمة من CSS المخصص لرسائل البريد الإلكتروني. | “” (فارغ) |
| enable_secondary_emails | boolean | يسمح للمستخدمين بإضافة عناوين بريد إلكتروني ثانوية إلى ملفاتهم الشخصية. | TRUE |
| max_participant_names | integer | الحد الأقصى لعدد أسماء المشاركين المعروضة في إشعارات البريد الإلكتروني للرسائل الجماعية. | 10 |
الملفات
تحديد كيفية إدارة الملفات والتحميلات:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| max_export_file_size_kb | integer | يحدد الحد الأقصى لحجم الملف للتصدير بالكيلوبايت. | 50000 |
| export_authorized_extensions | string | يحدد امتدادات الملفات المسموح بها للتصدير. | “zip” |
| secure_uploads_pm_only | boolean | إذا كان صحيحًا، يتم تفعيل التحميلات الآمنة فقط للرسائل الخاصة. | FALSE |
| enable_s3_transfer_acceleration | boolean | إذا كان صحيحًا، يفعل تسريع نقل Amazon S3. | FALSE |
| s3_http_continue_timeout | integer | الوقت بالثواني للانتظار للحصول على استجابة 100 Continue من S3 قبل إرسال حمولة الطلب. | 1 |
| s3_install_cors_rule | boolean | إذا كان صحيحًا، يثبت قواعد CORS على S3 للسماح بالطلبات من أي نطاق. | TRUE |
| s3_presigned_get_url_expires_after_seconds | integer | المدة بالثواني التي تنتهي بعدها عنوان URL الموقع مسبق التوقيع لكائنات S3. | 300 |
| decompressed_theme_max_file_size_mb | integer | الحد الأقصى لحجم الملف بالميغابايت لملف السمة بعد فك ضغطه. | 1000 |
| decompressed_backup_max_file_size_mb | integer | الحد الأقصى لحجم الملف بالميغابايت لملفات النسخ الاحتياطي بعد فك الضغط. | 100000 |
| composer_media_optimization_image_resize_pre_multiply | boolean | قم بتحسين معالجة الصور عن طريق الضرب المسبق للشفافية في عمليات التلاعب بالقماش لتحسين جودة تغيير حجم الصورة. | FALSE |
| composer_media_optimization_image_encode_quality | integer | جودة تشفير JPG المستخدمة في عملية إعادة التشفير لتحسين الصور. | 0 |
| composer_media_optimization_image_resize_linear_rgb | boolean | عند تغيير الحجم، استخدم RGB الخطي لتحسين جودة الصورة المعاد حجمها. | FALSE |
| composer_ios_media_optimisation_image_enabled | boolean | تفعيل استراتيجيات تحسين الصور المحددة على أجهزة iOS لتحسين الأداء. | TRUE |
| video_thumbnails_enabled | boolean | يفعل توليد صور مصغرة لملفات الفيديو المحملة إلى المنتدى. | TRUE |
الأمان
ضبط ميزات الأمان لتتناسب مع احتياجات المنتدى الخاص بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| allow_indexing_non_canonical_urls | boolean | يسمح بفهرسة عناوين URL غير القياسية. | TRUE |
| non_crawler_user_agents | list | قائمة من وكلاء المستخدم يعتبرون غير كاشفات. | "trident |
| crawler_user_agents | list | قائمة من وكلاء المستخدم يعتبرون كاشفات. | "rss |
| browser_update_user_agents | list | وكلاء المستخدم للمتصفحات القديمة لعرض رسائل التحديث. | "MSIE 6 |
| crawler_check_bypass_agents | string | وكلاء المستخدم الذين يمكنهم تجاوز فحوصات الكاشفات. | “cubot” |
| keep_old_ip_address_count | integer | عدد عناوين IP القديمة التي يتم الاحتفاظ بها لكل مستخدم. | 0 |
| content_security_policy_collect_reports | boolean | يفعل جمع تقارير انتهاكات سياسة أمان المحتوى (CSP). | FALSE |
| allow_embedding_site_in_an_iframe | boolean | يسمح بتضمين الموقع داخل إطار iframe على مواقع أخرى. | FALSE |
| send_old_credential_reminder_days | integer | عدد الأيام لتذكير المستخدمين بالبيانات القديمة. إذا تم تعيينه على 0، يتم تعطيل التذكيرات. | 0 |
| disable_onebox_media_download_controls | boolean | تعطيل عناصر التحكم في تحميل الوسائط في تضمينات الصوت/الفيديو Onebox. | FALSE |
| cross_origin_opener_policy_header | string | يحدد رأس Cross-Origin-Opener-Policy. الخيارات المتاحة: unsafe-none, same-origin, same-origin-allow-popups. | “same-origin-allow-popups” |
Onebox
التحكم في كيفية معالجة Oneboxes:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| force_get_hosts | list | النطاقات التي يتم فيها فرض طلب GET بسبب مشاكل مع طلبات HEAD | us.battle.net news.yahoo.com *.medium.com |
| onebox_user_agent | string | يحدد سلسلة وكيل المستخدم التي يستخدمها نظام Onebox عند إجراء طلبات HTTP. إذا كانت الإعداد فارغة، يعود إلى وكيل المستخدم الافتراضي المحدد في Onebox.options.user_agent |
“” |
| inline_onebox_user_agent | string | وكيل المستخدم المخصص المستخدم عند جلب استجابات Onebox المضمنة، إذا تم تحديده | “” |
حدود المعدل
إدارة الموارد والأمان من خلال حدود المعدل:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| rate_limit_search_anon_global_per_minute | integer | حد المعدل العالمي لطلبات البحث المجهولة في الدقيقة | 150 |
| rate_limit_search_anon_user_per_minute | integer | حد المعدل لكل مستخدم لطلبات البحث المجهولة في الدقيقة | 15 |
| rate_limit_search_anon_global_per_second | integer | حد المعدل العالمي لطلبات البحث المجهولة في الثانية | 8 |
| rate_limit_search_anon_user_per_second | integer | حد المعدل لكل مستخدم لطلبات البحث المجهولة في الثانية | 2 |
| rate_limit_search_user | integer | حد المعدل لكل مستخدم لطلبات البحث من المستخدمين المسجلين في الدقيقة | 30 |
| max_allowed_secondary_emails | integer | الحد الأقصى لعدد رسائل البريد الإلكتروني الثانوية المسموح للمستخدم بها | 10 |
| max_batch_presign_multipart_per_minute | integer | الحد الأقصى لعدد عمليات multipart متعددة التوقيع المسبق التي يمكن للمستخدم بدءها في الدقيقة | 20 |
| max_presigned_put_per_minute | integer | الحد الأقصى لعدد عمليات PUT متعددة التوقيع المسبق التي يمكن للمستخدم بدءها في الدقيقة | 10 |
| max_create_multipart_per_minute | integer | الحد الأقصى لعدد عمليات إنشاء multipart التي يمكن للمستخدم بدءها في الدقيقة | 10 |
| max_complete_multipart_per_minute | integer | الحد الأقصى لعدد عمليات إكمال multipart التي يمكن للمستخدم بدءها في الدقيقة | 10 |
| max_uploads_per_minute | integer | الحد الأقصى لعدد عمليات التحميل التي يمكن للمستخدم بدءها في الدقيقة | 10 |
المطور
تخصيص بيئة التطوير:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| force_hostname | string | يفرض اسم نطاق معين للموقع. | “” |
| port | integer | يُهيأ رقم المنفذ الذي يستمع إليه الخادم. | “” |
| enable_chunked_encoding | boolean | تفعيل استجابات الترميز المقطعي من قبل الخادم، مما قد يساعد في التعامل مع الوكلاء الذين يخزنون الاستجابات مؤقتًا. | TRUE |
| long_polling_base_url | string | عنوان URL الأساسي المستخدم للاستجواب الطويل، مفيد لفصل حركة مرور CDN عن تفاعل الموقع المباشر. | “/” |
| background_polling_interval | integer | التكرار بالميلي ثانية للاستجواب في الخلفية من قبل العملاء. | 60000 |
| polling_interval | integer | التكرار بالميلي ثانية للاستجواب النشط من قبل العملاء المسجلين. | 3000 |
| anon_polling_interval | integer | التكرار بالميلي ثانية لاستجواب العملاء المجهولين للخادم. | 25000 |
| rebake_old_posts_count | integer | عدد المشاركات التي يتم إعادة خبزها بواسطة المهام الآلية التي تعمل في الخلفية. | 80 |
| migrate_to_new_scheme | boolean | يُبدل ما إذا كان سيتم نقل التحميلات القديمة إلى مخطط تخزين جديد، يُستخدم بشكل رئيسي أثناء التحديثات. | FALSE |
| max_new_topics | integer | الحد الأقصى لعدد المواضيع الجديدة التي يمكن للمستخدم إنشاؤها، يُستخدم لمنع البريد العشوائي أو إجهاد النظام. | 500 |
| wizard_enabled | boolean | يفعل أو يعطل معالج الإعداد الذي يظهر بعد التثبيت. | TRUE |
| bypass_wizard_check | boolean | يسمح بتجاوز فحص إكمال معالج الإعداد، مفيد للمطورين أو الإعدادات الآلية. | FALSE |
| logging_provider | enum | يحدد إطار عمل التسجيل للتطبيق. يمكن أن يكون ‘default’ أو إطار عمل مدعوم آخر. | “default” |
| bootstrap_error_pages | boolean | تفعيل أو تعطيل صفحات الأخطاء المحملة والمُصممة. مفيد للحفاظ على اتساق الأسلوب في صفحات الأخطاء. | FALSE |
| include_associated_account_ids | boolean | تضمين معرفات الحسابات المرتبطة في مخرجات معينة—مفيد لمعالجة بيانات الحسابات الأكثر اتصالاً. | FALSE |
| max_sidebar_section_links | integer | الحد الأقصى لعدد الروابط في كل قسم من أشرطة الجانب، للتحكم في فوضى واجهة المستخدم والأداء. | 50 |
| instrument_gc_stat_per_request | boolean | ما إذا كان سيتم جمع وتسجيل إحصائيات جمع القمامة لكل طلب HTTP—مفيد لضبط الأداء. | FALSE |
| warn_critical_js_deprecations | boolean | تفعيل تحذيرات بشأن الإلغاءات الحرجة في JavaScript للمسؤولين—يساعد في التحضير للترقيات أو الإصلاحات. | TRUE |
| warn_critical_js_deprecations_message | string | رسالة مخصصة تُضاف إلى تحذيرات الإلغاء الحرجة في JS، مما يجعل الإشعارات أكثر إفادة. | “” |
التضمين
السماح بتضمين المحتوى أو تقييده:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| embed_by_username | string | اسم المستخدم المستخدم للمحتوى المضمن. | “” |
| embed_post_limit | integer | الحد الأقصى لعدد المشاركات المضمنة من مصدر خارجي. | 100 |
| embed_topic_limit_per_page | integer | الحد الأقصى لعدد المواضيع المعروضة في كل صفحة للمواضيع المضمنة. | 200 |
| embed_title_scrubber | string | التعبير النمطي المستخدم لتنظيف أو تعديل العناوين في المحتوى المضمن. | “” |
| blocked_embed_selectors | string | محددات CSS التي تحدد العناصر لاستبعادها من المحتوى المضمن. | “” |
| allowed_embed_classnames | string | أسماء الفئات المسموح بها في المحتوى المضمن، تساعد في تصفية نمط المحتوى. | “emoji” |
النسخ الاحتياطي
تخصيص تكوينات النسخ الاحتياطي:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| include_s3_uploads_in_backups | boolean | يحدد ما إذا كان يجب تضمين التحميلات المخزنة في S3 في نسخ موقع الاحتياطية. | FALSE |
البحث
تحسين وظيفة البحث داخل موقع Discourse الخاص بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| prioritize_exact_search_title_match | boolean | يمنح الأولوية لنتائج البحث التي تطابق مصطلحات البحث بدقة في العناوين. | TRUE |
| max_duplicate_search_index_terms | integer | يحدد الحد الأقصى لعدد المصطلحات المكررة المفهرسة للبحث. | 6 |
| use_pg_headlines_for_excerpt | boolean | تفعيل دعم عناوين Postgres لتوليد مقتطفات البحث. | FALSE |
| search_max_indexed_word_length | integer | الحد الأقصى لطول الكلمات المفهرسة للبحث. | 100 |
| search_ranking_normalization | string | يتحكم في تطبيع ترتيبات البحث لتحسين صلة النتائج. | “0” |
| search_ranking_weights | string | يحدد عوامل الوزن المستخدمة في حسابات ترتيب البحث. | “” |
| search_recent_regular_posts_offset_post_id | integer | إزاحة معرف المشاركة لاسترداد المشاركات الحديثة في نتائج البحث. | 0 |
| search_enable_recent_regular_posts_offset_size | integer | يحدد عدد المشاركات العادية الحديثة التي سيتم أخذها في الاعتبار في البحث. | 200000 |
| category_search_priority_low_weight | float | يحدد الوزن الأدنى لترتيب الأولوية للفئات في نتائج البحث. | 0.8 |
| category_search_priority_high_weight | float | يحدد الوزن الأعلى لترتيب الأولوية للفئات في نتائج البحث. | 1.2 |
| search_page_size | integer | عدد النتائج في كل صفحة في استعلامات البحث. | 50 |
غير مصنف
إعدادات مختلفة لا تنتمي إلى فئات أخرى:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| has_login_hint | boolean | يحدد ما إذا كانت يجب أن تظهر تلميحات تسجيل الدخول | FALSE |
| min_new_topics_time | integer | الحد الأدنى للوقت بين المواضيع الجديدة | 0 |
| general_category_id | integer | معرف الفئة العامة | -1 |
| meta_category_id | integer | معرف فئة الميتا | -1 |
| staff_category_id | integer | معرف فئة الطاقم | -1 |
| uncategorized_category_id | integer | معرف الفئة غير المصنفة | -1 |
| backup_drafts_to_pm_length | integer | طول المسودات في الرسائل الخاصة قبل الحاجة إلى نسخة احتياطية | 0 |
| view_user_route | string | قسم صفحة الملف الشخصي الافتراضي للمستخدم | “summary” |
| tos_topic_id | integer | معرف موضوع شروط الخدمة | -1 |
| guidelines_topic_id | integer | معرف موضوع الإرشادات | -1 |
| privacy_topic_id | integer | معرف موضوع سياسة الخصوصية | -1 |
| welcome_topic_id | integer | معرف موضوع الترحيب | -1 |
| admin_quick_start_topic_id | integer | معرف موضوع دليل البدء السريع للمسؤول | -1 |
| ios_app_id | string | معرف متجر التطبيقات لتطبيق iOS | “1173672076” |
| android_app_id | string | معرف متجر Play لتطبيق Android | “com.discourse” |
| pwa_display_browser_regex | string | Regex لتحديد ما إذا كان عرض PWA مضبوطًا على ‘browser’ | “a^” |
| always_include_topic_excerpts | boolean | تضمين مقتطفات المواضيع في كل مرة | FALSE |
| max_bulk_invites | integer | الحد الأقصى لعدد الدعوات الجماعية الممكنة | 50,000 |
| skip_email_bulk_invites | boolean | تخطي إرسال رسائل البريد الإلكتروني في الدعوات الجماعية | FALSE |
| max_api_invites | integer | الحد الأقصى لعدد الدعوات لكل طلب API | 200 |
| overridden_robots_txt | string | قواعد مخصصة لملف robots.txt | “” |
| show_category_definitions_in_topic_lists | boolean | عرض مشاركات تعريف الفئة في قوائم المواضيع | FALSE |
| max_automatic_membership_email_domains | integer | الحد الأقصى لعدد نطاقات البريد الإلكتروني للانضمام التلقائي الممكنة | 50 |
API
إدارة كيفية عمل API داخل مثيل Discourse الخاص بك:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| api_key_last_used_epoch | integer | يتتبع آخر وقت تم استخدامه للمفاتيح. غير قابل للوصول أو التعديل مباشرة. | # يتم إضافة القيمة في عملية نقل |
| revoke_api_keys_maxlife_days | integer | عدد الأيام قبل إلغاء مفتاح API تلقائيًا، اضبط على 0 لعدم الإلغاء أبدًا. | 0 |
لوحة التحكم
ضبط التقارير المعروضة في لوحة تحكم المسؤول وكيفية تعريف المواضيع الساخنة:
| إعداد الموقع | النوع | الوصف | القيمة الافتراضية |
|---|---|---|---|
| verbose_user_stat_count_logging | boolean | يفعل تسجيل مفصل لتحديثات إحصائيات المستخدمين. | FALSE |
| hot_topics_gravity | float | يتحكم في إعداد الجاذبية المستخدم في حساب المواضيع الساخنة. | 1.2 |
| hot_topics_recent_days | integer | يحدد عدد الأيام الأخيرة التي سيتم أخذها في الاعتبار لحساب درجات المواضيع الساخنة. | 7 |