منع الربط عند وجود إعادة توجيه

إذا فهمت بشكل صحيح، فإن Discourse يستخدم GitHub - markdown-it/linkify-it: Links recognition library with full unicode support لتوفير رابط لطيف مع عنوان. على سبيل المثال، الرابط السابق يعطي عنوانًا لطيفًا GitHub - markdown-it/linkify-it: Links recognition library with full unicode support.

ومع ذلك، لدي المشكلة التالية: للوصول إلى بعض الروابط المنشورة، يجب أن تكون مصادقًا في أداة أخرى (مثل Jira، Google…). لذا ما يحدث هو أن جميع الروابط (والكتل لبعض عناوين URL المحولة) ستعرض ببساطة Login to support أو Meet Google Drive – One place for all your files[...] وهو ليس لطيفًا حقًا.

هل توجد بالفعل ميزة أو مكون/إضافة موجودة تسمح باختبار عنوان URL مسبقًا وفي حالة وجود إعادة توجيه، عدم إعطاء عنوان لعنوان URL؟

إعجابَين (2)

نعم، الحل العام لدينا هنا هو استخدام إعداد الموقع blocked onebox domains.

أضف جميع عناوين URL الداخلية “التي تتطلب تسجيل الدخول” إلى تلك القائمة.

أتساءل @nat/@codinghorror عما إذا كان يجب علينا إضافة إعداد مطرقة هنا.

block onebox on redirect - يمكن لهذا الإعداد حظر أي oneboxes تمامًا إذا تم إشراك إعادة توجيه. إنه يوفر رافعة بسيطة جدًا للتحكم في هذا السلوك بشكل غير مشروط عبر مجالات متعددة.

3 إعجابات

شكراً على التلميح للروابط الداخلية.
ستكون الميزة الأكثر عمومية مع “حظر onebox عند إعادة التوجيه” محل تقدير كبير حيث لا نعرف مسبقًا القائمة الكاملة التي قد ينشرها المستخدمون.

يبدو أن هذا لا يعمل للروابط التي تم تحويلها إلى روابط ولكن لم يتم تحديثها إلى “onebox” بل تم تحويلها ببساطة إلى عنوان (على سبيل المثال، رابطنا الداخلي https://support.sqills.com/browse/SCQI-934 يتحول إلى “تسجيل الدخول - Sqills Jira” ولكن عنوان URL الأساسي يعطي فقط “https://support.sqills.com” كعنوان للرابط).

إعجابَين (2)

هناك بالتأكيد خطأ مربك هنا يجب علينا معالجته.

لقد قمت بحظر support.sqills.com وأؤكد أنه يقوم بما يفترض أن يقوم به لـ https://support.sqills.com/browse/SCQI-934?1 https://support.sqills.com/browse/SCQI-934?1 ولكن للأسف https://support.sqills.com/browse/SCQI-934 مخزن مؤقتًا على جانب الخادم لمدة 24 ساعة وإعادة بناء HTML لا يكسر ذاكرة التخزين المؤقت.

سنقوم بحل هذه المشكلة الصغيرة هذا الأسبوع حتى نقلل الدعم حول هذا الأمر. يبدو حظر إعادة التوجيه كخيار رائع بالنسبة لي، قد نتمكن من إدخاله. ربما block onebox on cross domain redirect أفضل، أو ربما هذا كثير جدًا… لست متأكدًا.

إعجابَين (2)

تم إصلاح هذا في:

الآن عندما يتم إعادة بناء منشور، تتم إزالة إدخالات ذاكرة التخزين المؤقت لجميع الروابط في المنشور قبل إعادة بنائها.

وهنا طلب سحب لإضافة إعداد موقع block_onebox_on_redirect:

عند تمكين block_onebox_on_redirect، لن يقوم Discourse أبدًا بإنشاء onebox للروابط التي تعيد التوجيه. الاستثناء الوحيد لذلك هو إذا كان الرابط http ويعيد التوجيه إلى إصدار https من الرابط. يتم ذلك لأن من الشائع جدًا أن تقوم المواقع التي تدعم TLS بإعادة توجيه حركة مرور http إلى https، وبالتالي يجب أن يعمل onebox بشكل لا يزال يعمل إذا قام المستخدم على سبيل المثال بكتابة رابط باستخدام http وتمت إعادة توجيه الموقع إلى https.

إعجابَين (2)