Reputation: 4693
I am trying to deploy mayan-edms a django web application on a RedHat5.6 server in production mode with apache webserver.
I have setup the database and the used a virtual-env to setup the env
This is my httpd.conf
WSGIScriptAlias /mayan /var/www/mayan/mayan/wsgi/dispatch.wsgi
WSGIPythonPath /var/www/mayan/mayan:/var/www/mayan/lib/python2.6/site-packages
<Directory /var/www/mayan/mayan>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
I am getting a 500 error if I start apache with this conf. Could anyone tell me where it is getting misconfigured?
This is the error
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] mod_wsgi (pid=21715): Exception occurred processing WSGI script '/var/www/mayan/mayan/wsgi/dispatch.wsgi'.
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] Traceback (most recent call last):
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] File "/var/www/mayan/lib/python2.6/site-packages/django/core/handlers/wsgi.py", line 250, in __call__
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] self.load_middleware()
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] File "/var/www/mayan/lib/python2.6/site-packages/django/core/handlers/base.py", line 45, in load_middleware
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] mod = import_module(mw_module)
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] File "/var/www/mayan/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] __import__(name)
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] File "/var/www/mayan/mayan/apps/common/__init__.py", line 17
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] from .conf.settings import (AUTO_CREATE_ADMIN, AUTO_ADMIN_USERNAME,
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] ^
[Mon Jan 14 12:47:02 2013] [error] [client 130.229.146.48] SyntaxError: invalid syntax
This is my init.py around line 17
from django.db import transaction, DatabaseError
from navigation.api import register_links, register_top_menu
from .conf.settings import (AUTO_CREATE_ADMIN, AUTO_ADMIN_USERNAME, AUTO_ADMIN_PASSWORD, TEMPORARY_DIRECTORY)
from .conf import settings as common_settings
from .utils import validate_path
from .models import AutoAdminSingleton
Upvotes: 1
Views: 538
Reputation: 3800
You are using python 2.6, the documentation for installation seems to use python 2.7
Upvotes: 1
Reputation: 599936
Sounds like a Python version issue. RHEL 5.6 appears to be quite an old release, and anyway Red Hat are known for bundling old versions of Python. Looking at this table it seems likely that that version of RHEL was not even Python 2.4.
From the other side, the minimum Python version to run the current Django release is 2.7. Although that said, the requirements.txt file for your app actually asks for Django 1.3.5 - but you will still need at least Python 2.6 for that. You will either need to compile and install that version yourself, or upgrade your version of Red Hat.
Upvotes: 1