我正在将一个使用django_CMS的应用程序从一个服务器(在该服务器上一切正常)移动到另一个服务器,并且在过去的4个小时中一直在尝试找出此错误的原因。A建议非常欢迎!
mod_wsgi (pid=21972): Exception occurred within WSGI script '/var/www/vhosts/compdoctest.com/django/compdoc/django.wsgi'.
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/django/core/handlers/wsgi.py", line 230, in __call__
self.load_middleware()
File "/usr/lib/python2.5/site-packages/django/core/handlers/base.py", line 42, in load_middleware
raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))
ImproperlyConfigured: Error importing middleware cms.middleware.media: "No module named media"
违规行是settings.py中中间件列表中的最后一行。
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'cms.middleware.page.CurrentPageMiddleware',
'cms.middleware.user.CurrentUserMiddleware',
'cms.middleware.multilingual.MultilingualURLMiddleware',
'cms.middleware.media.PlaceholderMediaMiddleware',
)
如果我删除了最后一行,那么代码将继续,并在稍后说中间件中需要这个项。
我使用的是稍有不同版本的django,在旧的工作服务器上使用1.2.1 final,在新服务器上使用1.2.3 final。
我所做的一切:
-
在旧服务器上使用的Django_CMS的同一版本-2.1.0 Beta 3
-
Github上的最新版本-2.1.0.beta2-550,将CMS、MPTT、菜单、发布者文件夹放入
-
应用程序从python导入
-
谷歌搜索(没有人有我能找到的相同问题)
-
中间件文件直接(没问题)
在python中打开的结果:
python manage.py shell
Python 2.5.2 (r252:60911, Jan 20 2010, 23:14:04)
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import cms.middleware.media
>>> cms.middleware.media.__file__
'/var/www/vhosts/compdoctest.com/django/compdoc/cms/middleware/media.pyc'
>>> from django.forms.widgets import Media
>>> import cms.middleware.media
>>>