هل هناك طريقة يمكن للواجهة الخلفية من خلالها تحويل جميع الروابط الجزئية في المنشورات (example.com) إلى روابط https (https://www.example.com)؟
يبدو أنها تُنشأ كروابط http://، مما يؤدي إلى فوضى كاملة عندما تفشل طلبات HTTP الخارجية http://example.com للعديد من المستخدمين الذين ينقرون عليها من المنشور.
(أو، التحقق من عنوان الوجهة المُنشأ وتعديله إلى البروتوكول الصحيح للوصول إليه؟)
شكرًا، هذا هو سؤالي الأول، عذرًا إذا كان مكررًا ولكني لم أجد شيئًا موجزًا حول هذا الموضوع.
ميتش
لا، هذا غير صحيح. هناك العديد من المواقع التي تستخدم http، لأنها ببساطة لا تحتاج إلى SSL.
هل ستكون هذه مهمة أخرى عادية للبحث والاستبدال؟ أم أنني أسأت فهم كل شيء مرة أخرى؟
نوبة هلع غير عقلانية
بالإضافة إلى ذلك، أنا قلق بشأن موقف حرج حيث يستخدم Discourse خادم VPS خاص به، وأمامه خادم VPS آخر حيث يوجد وكيل عكسي. سيتحدث هذان الخادمان إلى بعضهما البعض بدون SSL في كثير من الأحيان.
لكن هذا وضع مختلف تمامًا، أليس كذلك؟ لكنني بدأت أشعر بالتوتر في كل مرة يكون هناك شيء افتراضي يمكن أن يتغير بالنسبة لي بالاختصارات المألوفة…
أنا متأكد من أن المتصفحات الحديثة تعطي الأولوية لـ HTTPS على HTTP افتراضيًا.
أيضًا، تقوم العديد من مواقع الويب من جانب الخادم بإعادة التوجيه إلى HTTPS أو استخدام رأس HSTS.
الحاجة إلى تأمين الاتصالات بين الخوادم باستخدام SSL عندما لا تتضمن البيانات أي شيء يحتاج إلى تأمين تستحق موضوعًا آخر. لكن هذا خارج الموضوع تمامًا هنا.
لكن إخبار المستخدمين بأنه آسف، لا يمكنك الارتباط لأن طرفًا ثالثًا لا يستخدم المنفذ 443 هي فكرة سيئة. ليس من وظيفة المسؤول أو حتى وظيفة discourse أن يقرر ما يجب على شخص ما فعله.
نعم، إذا كان موجودًا. وبعض أجهزة التوجيه/المودم المنزلية مهيأة لاستخدام https فقط وهذا مزعج حقًا. لأن ليس كل موقع يتبع رغبة Google في استخدام SSL في كل مكان، وجزئيًا لأن العديد من المنصات تقدم روابط قديمة باستخدام http وهذه الأجهزة الغبية لا يمكنها إعادة كتابة عنوان URL.
لذلك قبل أي مناقشة للميزات، يجب أن يكون هناك موضوع ميتا آخر أولاً: هل تقع على عاتق منصة المنتدى مسؤولية فرض استخدام SSL للروابط الصادرة.
بعد ذلك، يكون الحل التقني سهلًا بشكل معقول، على ما أعتقد - ولكن مرة أخرى، أنا لست مطورًا.
لكن بالعودة إلى الموضوع.
إذًا، البحث والاستبدال ليس حلاً حادًا؟ لكنني لا أتابع الآن… مرة أخرى… هل المشكلة الحقيقية هي أن Discourse يشكل روابط تلقائيًا إذا تم إعطاء عنوان URL عادي؟ إذا كان الأمر كذلك، فأنا أعود قليلاً ونعم، يجب أن يكون https تلقائيًا - ولكن يجب أن يكون قابلاً للتحرير.
إذن مع ذلك (مترجم إلى Ruby إذا كنت أتذكر)، يمكن لـ Discourse back-end معرفة ما إذا كان الهدف من رابط جزئي معطى في منشور هو https أو http، ثم (مع تفضيل https) فتح الرابط الهدف الصحيح للمستخدم؟