سؤال

لدي تطبيق جانغو موجود مع وظائف كاملة في كل من بيئة التطوير والإنتاج.يتم التعامل مع هذا عن طريق تغيير فقط ALLOWED_HOSTS بشكل مناسب (على افتراض أنك لا تريد ذلك DEBUG) وإعداد أباتشي لخدمة كل موقع بشكل صحيح.مشكلتي هي أنني أريد استخدام جانغو يعيد توجيه التطبيق للتعامل مع الموجهات بلدي المضي قدما (جزء من هذا المشروع هو الانتقال بعيدا عن فب) لأنه يعني أنني لست بحاجة للتعامل مع هذه الموجهات في أباتشي بعد الآن.الموجهات هي صداع أكبر وأباتشي يسبب مشاكل مع مؤشره.فب إعادة توجيه الحلقات.أيضا هذا سوف يسمح لي للانتقال المزيد من السيطرة على الموقع تحت جانغو ، وهو هدف لسهولة الإدارة.المشكلة التي أواجهها هي أن تطبيق عمليات إعادة التوجيه يستخدم الموقع لتحديد هدف صالح/إعادة توجيه.يحتوي خادم الإنتاج على اسم مضيف مختلف عن التطوير ، لذا لا يمكنني اختبار أو التحقق من تطبيق عمليات إعادة التوجيه.من الواضح أن هذا يضر بالغرض من خادم التطوير المعزول المتطابق تقريبا ، وهو اختبار جميع الوظائف قبل البث المباشر.أنا أفهم من إطار عمل المواقع أن المواقع الفردية تحتاج إلى فرد settings.py تتعايش الملفات والشياطين ، ولكن هذا مرة أخرى ليس مفيدا للسيناريو الخاص بي لأن موقع التطوير منفصل جغرافيا عن الإنتاج.ليس واضحا لي من الوثائق:

1) كيفية إضافة موقع ، بخلاف إضافة / تغيير SITE_ID - أين يمكنني اختيار اسم المرتبطة?

2) على افتراض 1 ، هو أن أفضل طريقة (وغير كافية) منذ لدي بالفعل مختلفة settings.py ملف?

3) كيف لي في نهاية المطاف مع اثنين من إدخالات المواقع لنفسه foo.com وكيف يؤثر هذا على عمليات إعادة التوجيه الخاصة بي?ليس لدي سوى وسجي واحد و settings.py (على كل خادم) ولكن

+----+-------------+-------------+
| id | domain      | name        |
+----+-------------+-------------+
|  1 | example.com | example.com |
|  2 | foo.net     | foo.net     |
|  3 | foo.net     | foo         |
+----+-------------+-------------+

في قاعدة البيانات الخاصة بي?لا أرى مكان إضافة هذه المواقع أو تكوينها مما يؤدي إلى ارتباكي حول كيفية ضبط إطار عمل مواقعي ليناسب تطبيق عمليات إعادة التوجيه.منذ أنا على جانغو 1.5.4 تم تمكين إطار المواقع افتراضيا لذلك أنا لم أفكر حتى عن ذلك من قبل.

هل كانت مفيدة؟

المحلول

لا يهم اسم الموقع المرتبط نظرا لأن عمليات إعادة التوجيه تستخدم المعرف فقط ، لذلك قمت بحذف جميع المواقع المكررة مع ترك المعرف 1 فقط لاسم المجال الفعلي ، قم بتعيين SITE_ID = 1 في كل من تكوين الإنتاج والاختبار.لا أعرف من أين أتت المواقع الأخرى منذ أن استخدمت فقط SITE_ID لإعداد عمليات إعادة التوجيه ، لكنها تعمل الآن.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top