الإعداد جانغو مع WSGI أباتشي
سؤال
لقد تم بيعها على mod_wsgi أباتشي بدلا من mod_python.عندي كل الأجزاء المثبتة (جانغو, أباتشي, mod_wsgi) ولكن واجهت مشكلة نشر.
أنا على osx 10.5 مع اباتشي 2.2 و جانغو 1.0b2, mod_wsgi-2.3
طلبي هو يسمى حاولت.
وهنا الملفات ذات الصلة:httpd-vhosts (المدرجة في httpd-conf)
NameVirtualHost tred:80 ServerName tred Alias /admin_media /usr/lib/python2.5/site-packages/django/contrib/admin/media Order allow,deny Allow from all Alias /media /Users/dmg/Sites/tred/media Order allow,deny Allow from all Alias / /Users/dmg/Sites/tred/ Order allow,deny Allow from all WSGIScriptAlias / /Users/dmg/Sites/tred/mod_wsgi-handler.wsgi WSGIDaemonProcess tred user=dmg group=staff processes=1 threads=10 WSGIProcessGroup tred
mod_wsgi مقبض.wsgi
import sys import os sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..') os.environ['DJANGO_SETTINGS_MODULE'] = 'tred.settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
عندما أذهب إلى http://tred أحصل على دليل قائمة بدلا من تقديم الموقع.أعتقد لقد تابعت الدروس بشكل صحيح ولكن من الواضح أنه ليس على حق.ما الذي يمكنني القيام به لجعل هذا العمل ؟
المحلول
ماذا يحدث إذا قمت بإزالة Alias /
التوجيه ؟
نصائح أخرى
لاحظ أن الاسم المستعار و WSGIScriptAlias توجيهات لا يكون لها نفس الأسبقية.وبالتالي ، فإنها لا يمكن معالجتها في ملفات النظام كما هو مكتوب.بدلا من ذلك, كل المستعار توجيهات الحصول على الأسبقية على WSGIScriptAlias التوجيهات.وبالتالي لن يكون مهما إذا كان الاسم المستعار '/' ظهرت بعد WSGIScriptAlias قد أخذ الأسبقية.
أنه يعمل.ليس لدي فكرة لماذا, ولكنه لا يفعل.
للرجوع إليها في المستقبل:
أنه يعمل لأن أباتشي العمليات مستعار توجيهات في النظام ، ويستخدم المباراة الأولى.كان دائما ضرب Alias /
, التي سوف تتطابق مع أي شيء قبل WSGIScriptAlias
.
أولا كل التحويلات تتم معالجتها قبل الأسماء المستعارة معالجة ولذلك طلب أن يطابق
Redirect
أوRedirectMatch
لن يكون المستعارة تطبيقها.ثانيا الأسماء المستعارة و الموجهات يتم معالجتها في النظام تظهر في ملفات التكوين مع المباراة الأولى أخذ الأسبقية.
حاول اتباع هذا البرنامج التعليمي ، http://singlas.in/5-step-tutorial-for-using-django-with-apache-and-mod_wsgi/
أنت تحاول المضيفة apache /فار/على شبكة الاتصالات العالمية/ المجلد جانغو التطبيق على حد سواء في الجذر (/).منذ مستعار التوجيه الأسبقية WSGIScriptAlias هو تقديم دليل أباتشي.
يمكنك محاولة لاستضافة جانغو التطبيق في التطبيق.بدلا من استضافة /var/www/ مجلد في موقع مختلف مثل /العامة