【问题标题】:Django: 500 internal server error , is it due to only MySQL DB?Django: 500 internal server error ,是因为只有 MySQL DB 吗?
【发布时间】:2013-12-16 21:58:00
【问题描述】:

我使用 mod_wsgi 在数字海洋上安装了 Django,但出现 500 内部服务器错误。当我查看 apache 错误日志时,这是我得到的:

[Mon Dec 16 20:45:53 2013] [error] [client 61.147.99.202] File does not exist: /var/www/web-console
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23] mod_wsgi (pid=29891): Exception occurred processing WSGI script '/var/www/kaasib/kaasib/wsgi.py'.
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23] Traceback (most recent call last):
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 187, in __call__
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     self.load_middleware()
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 47, in load_middleware
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     mw_class = import_by_path(middleware_path)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 21, in import_by_path
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     module = import_module(module_path)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/middleware.py", line 3, in <module>
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     from django.contrib.auth.backends import RemoteUserBackend
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/backends.py", line 3, in <module>
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     from django.contrib.auth.models import Permission
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/models.py", line 48, in <module>
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     class Permission(models.Model):
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 96, in __new__
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     new_class.add_to_class('_meta', Options(meta, **kwargs))
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 264, in add_to_class
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     value.contribute_to_class(cls, name)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/options.py", line 124, in contribute_to_class
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 34, in __getattr__
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     return getattr(connections[DEFAULT_DB_ALIAS], item)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 198, in __getitem__
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     backend = load_backend(db['ENGINE'])
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 113, in load_backend
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     return import_module('%s.base' % backend_name)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py", line 17, in <module>
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23]     raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
[Tue Dec 17 02:01:50 2013] [error] [client 175.110.123.23] ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23] mod_wsgi (pid=29984): Exception occurred processing WSGI script '/var/www/kaasib/kaasib/wsgi.py'.
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23] Traceback (most recent call last):
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 187, in __call__
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     self.load_middleware()
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 47, in load_middleware
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     mw_class = import_by_path(middleware_path)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 21, in import_by_path
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     module = import_module(module_path)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/middleware.py", line 3, in <module>
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     from django.contrib.auth.backends import RemoteUserBackend
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/backends.py", line 3, in <module>
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     from django.contrib.auth.models import Permission
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/models.py", line 48, in <module>
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     class Permission(models.Model):
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 96, in __new__
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     new_class.add_to_class('_meta', Options(meta, **kwargs))
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 264, in add_to_class
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     value.contribute_to_class(cls, name)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/options.py", line 124, in contribute_to_class
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 34, in __getattr__
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     return getattr(connections[DEFAULT_DB_ALIAS], item)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 198, in __getitem__
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     backend = load_backend(db['ENGINE'])
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 113, in load_backend
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     return import_module('%s.base' % backend_name)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py", line 17, in <module>
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23]     raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
[Tue Dec 17 02:07:26 2013] [error] [client 175.110.123.23] ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23] mod_wsgi (pid=29959): Exception occurred processing WSGI script '/var/www/kaasib/kaasib/wsgi.py'.
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23] Traceback (most recent call last):
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 187, in __call__
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     self.load_middleware()
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 47, in load_middleware
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     mw_class = import_by_path(middleware_path)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 21, in import_by_path
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     module = import_module(module_path)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/middleware.py", line 3, in <module>
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     from django.contrib.auth.backends import RemoteUserBackend
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/backends.py", line 3, in <module>
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     from django.contrib.auth.models import Permission
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/models.py", line 48, in <module>
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     class Permission(models.Model):
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 96, in __new__
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     new_class.add_to_class('_meta', Options(meta, **kwargs))
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 264, in add_to_class
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     value.contribute_to_class(cls, name)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/models/options.py", line 124, in contribute_to_class
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 34, in __getattr__
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     return getattr(connections[DEFAULT_DB_ALIAS], item)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 198, in __getitem__
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     backend = load_backend(db['ENGINE'])
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 113, in load_backend
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     return import_module('%s.base' % backend_name)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 40, in import_module
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     __import__(name)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]   File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py", line 17, in <module>
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23]     raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
[Tue Dec 17 02:38:09 2013] [error] [client 175.110.123.23] ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

在最后一行,它说,ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb。我猜在那里,需要安装 python 的 MySQLdb 模块。但是我在本地机器上也遇到了这样的问题,但这不是 500 内部服务器错误。现在也在服务器上,它是 Debug true。所以不要认为 500 Internal Server 错误是由于 MySQL DB 模块造成的。

那么知道导致 500 Internal Server 错误的问题是什么吗?我认为 mod_wsgi 配置存在一些问题,但不确定。如果您有任何想法,请告诉我。

【问题讨论】:

  • 你做了pip install python-mysqldb 吗?

标签: django mod-wsgi mysql-python internal-server-error


【解决方案1】:

在 linux 上安装 MySQLdb 需要一个系统包(具有 aptitude),您可以使用以下方式安装它:

python-mysqldb - MySQL 的 Python 接口

  1. sudo apt-get install python-mysqldb
  2. pip install MySQL-python

【讨论】:

  • 所以你的意思是这只是MySQLDB的问题?
  • 它不应该是 500 Internal Server Error,在 MySQLDB 的情况下,我的 Debug in settings 设置为 true。
  • 好的,只有第一条语句解决了错误,这是由于python-mysqldb
  • @Hafiz,作为旁注,您离开了您的个人网站debug=Truekaasib.com
  • 这是同一个站点,我说的是,它尚未配置,一旦完成,将执行 debug=False。
猜你喜欢
  • 2022-12-08
  • 2015-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 2021-06-02
相关资源
最近更新 更多