Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

LDAP authentication ok from manage.py but crash from Apache

I installed askbot 0.7.50 on Suse SLES11 SP3. I configured it to allow (only) login via LDAP following the optional-modules/ldap-authentication documentation.

When I run it from Apache I can login as local admin user (admin is a local user, not from LDAP). Also when I stop Apache and run askbot with "python manage.py runserver" LDAP login works absolutely fine.

However when I run askbot via Apache and then try to login with an LDAP account, AskBot crashes. I will attach the crash logs (from running AskBot in debug mode) and Apache config file below.

If anybody has a clue what could be the cause of this, I would be glad to hear.

BdbQuit at /account/signin/

No exception supplied

Request Method: POST Request URL: http://<my_url>/account/signin/ Django Version: 1.5.11 Exception Type: BdbQuit Exception Location: /usr/lib64/python2.6/bdb.py in dispatch_line, line 65 Python Executable: /usr/bin/python Python Version: 2.6.9 Python Path:

['/usr/local/lib64/python2.6/site-packages/South-1.0.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Coffin-0.3.8-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/lamson-1.3.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_keyedcache-1.5.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_celery-3.1.16-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/oauth2-1.5.211-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Unidecode-0.04.16-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/markdown2-2.3.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_threaded_multihost-1.4_1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/pytz-2013b-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_compressor-1.2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_robots-1.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_picklefield-0.3.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/python_openid-2.2.5-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/akismet-0.2.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_countries-1.0.5-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_kombu-0.9.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_tinymce-1.5.1b2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_followit-0.0.3-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/html5lib-0.90-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_recaptcha_works-0.3.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/longerusername-0.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/sanction-0.3.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/pystache-0.3.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/beautifulsoup4-4.3.2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/httplib2-0.9-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_appconf-0.6-py2.6.egg', '/usr/lib/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/Numeric', '/usr/lib64/python2.6/site-packages/PIL', '/usr/local/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/gtk-2.0', '/data/askbot', '/data/askbot/my_askbot_site', '/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps']

Server time: Mon, 23 Feb 2015 08:20:23 -0600

Environment:

Request Method: POST Request URL: http://<my_url>/account/signin/

Django Version: 1.5.11 Python Version: 2.6.9 Installed Applications: ('longerusername', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.humanize', 'django.contrib.sitemaps', 'django.contrib.messages', 'compressor', 'askbot', 'askbot.deps.django_authopenid', 'south', 'askbot.deps.livesettings', 'keyedcache', 'robots', 'django_countries', 'djcelery', 'djkombu', 'followit', 'tinymce', 'group_messaging') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware', 'askbot.middleware.forum_mode.ForumModeMiddleware', 'askbot.middleware.cancel.CancelActionMiddleware', 'django.middleware.transaction.TransactionMiddleware', 'askbot.middleware.view_log.ViewLogMiddleware', 'askbot.middleware.spaceless.SpacelessMiddleware')

Traceback: File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/core/handlers/base.py" in get_response 113. response = callback(request, callback_args, callback_kwargs) File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/utils/decorators.py" in _wrapped_view 91. response = view_func(request, *args, *kwargs) File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/views.py" in signin 471. method = 'ldap' File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/contrib/auth/__init__.py" in authenticate 60. user = backend.authenticate(credentials) File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/backends.py" in authenticate 204. user_info = ldap_authenticate(username, password) File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default 61. try: File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default 61. try: File "/usr/lib64/python2.6/bdb.py" in trace_dispatch 46. return self.dispatch_line(frame) File "/usr/lib64/python2.6/bdb.py" in dispatch_line 65. if self.quitting: raise BdbQuit

Exception Type: BdbQuit at /account/signin/ Exception Value:

Request information GET No GET data POST Variable Value username u'ldap_username' password u'ldap_user_pwd' persona_assertion u'' password_action u'login' login_provider_name u'local' login_with_password u'Sign in' csrfmiddlewaretoken u'qyYr7c9SURYcS2zfz5nEwH04X59atO37' next u'/'

Apache config file:

NameVirtualHost <my_hostname>:80
NameVirtualHost <my_hostname>:443

LoadModule rewrite_module /usr/lib64/apache2/mod_rewrite.so

WSGISocketPrefix /var/run/wsgi
WSGIPythonEggs /var/python/eggs

<VirtualHost <my_url>:80>
     ServerAdmin you@example.com
     DocumentRoot /data/askbot/my_askbot_site
     ServerName <my_server_name>

     #aliases to serve static media directly
     #will probably need adjustment
     Alias /m/ /data/askbot/my_askbot_site/static/
     Alias /upfiles/ /data/askbot/my_askbot_site/askbot/upfiles

     <Directory /data/askbot/my_askbot_site>
       Order allow,deny
       Allow from all
    </Directory>

     <DirectoryMatch "/data/askbot/my_askbot_site/askbot/skins/([^/]+)/media">
        Order deny,allow
        Allow from all
     </DirectoryMatch>

     <Directory "/data/askbot/my_askbot_site/askbot/upfiles">
        Order deny,allow
        Allow from all
     </Directory>
     #must be a distinct name within your apache configuration
     WSGIDaemonProcess askbot2
     WSGIProcessGroup askbot2
     WSGIScriptAlias / /data/askbot/my_askbot_site/django.wsgi
     #make all admin stuff except media go through secure connection
     CustomLog /var/log/apache2/askbot_access_log common
     ErrorLog /var/log/apache2/askbot_error_log
     LogLevel debug
</VirtualHost>

LDAP authentication ok from manage.py but crash from Apache

I installed askbot 0.7.50 on Suse SLES11 SP3. I configured it to allow (only) login via LDAP following the optional-modules/ldap-authentication documentation.

When I run it from Apache I can login as local admin user (admin is a local user, not from LDAP). Also when I stop Apache and run askbot with "python manage.py runserver" LDAP login works absolutely fine.

However when I run askbot via Apache and then try to login with an LDAP account, AskBot crashes. I will attach the crash logs (from running AskBot in debug mode) and Apache config file below.

If anybody has a clue what could be the cause of this, I would be glad to hear.

BdbQuit at /account/signin/

No exception supplied

Request Method: POST
Request URL: http://<my_url>/account/signin/ http://<my_url>/account/signin/
Django Version: 1.5.11
Exception Type: BdbQuit
Exception Location: /usr/lib64/python2.6/bdb.py in dispatch_line, line 65
Python Executable: /usr/bin/python Python Python
Version: 2.6.9 Python Path:

['/usr/local/lib64/python2.6/site-packages/South-1.0.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Coffin-0.3.8-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/lamson-1.3.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_keyedcache-1.5.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_celery-3.1.16-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/oauth2-1.5.211-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/Unidecode-0.04.16-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/markdown2-2.3.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_threaded_multihost-1.4_1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/pytz-2013b-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_compressor-1.2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_robots-1.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_picklefield-0.3.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/python_openid-2.2.5-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/akismet-0.2.0-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_countries-1.0.5-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_kombu-0.9.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_tinymce-1.5.1b2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_followit-0.0.3-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/html5lib-0.90-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_recaptcha_works-0.3.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/longerusername-0.4-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/sanction-0.3.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/pystache-0.3.1-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/beautifulsoup4-4.3.2-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/httplib2-0.9-py2.6.egg', '/usr/local/lib64/python2.6/site-packages/django_appconf-0.6-py2.6.egg', '/usr/lib/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/Numeric', '/usr/lib64/python2.6/site-packages/PIL', '/usr/local/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/gtk-2.0', '/data/askbot', '/data/askbot/my_askbot_site', '/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps']

Server time: Mon, 23 Feb 2015 08:20:23 -0600

Environment:

Request Method: POST Request URL: http://<my_url>/account/signin/

Django Version: 1.5.11 Python Version: 2.6.9 Installed Applications: ('longerusername', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.humanize', 'django.contrib.sitemaps', 'django.contrib.messages', 'compressor', 'askbot', 'askbot.deps.django_authopenid', 'south', 'askbot.deps.livesettings', 'keyedcache', 'robots', 'django_countries', 'djcelery', 'djkombu', 'followit', 'tinymce', 'group_messaging') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware', 'askbot.middleware.forum_mode.ForumModeMiddleware', 'askbot.middleware.cancel.CancelActionMiddleware', 'django.middleware.transaction.TransactionMiddleware', 'askbot.middleware.view_log.ViewLogMiddleware', 'askbot.middleware.spaceless.SpacelessMiddleware')

Traceback: Traceback:
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/core/handlers/base.py" in get_response get_response
113. response = callback(request, callback(request, callback_args, callback_kwargs) File callback_kwargs)
File
"/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/utils/decorators.py" in _wrapped_view _wrapped_view
91. response = view_func(request, *args, *
kwargs) kwargs)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/views.py" in signin signin
471. method = 'ldap' 'ldap'
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/contrib/auth/__init__.py" in authenticate authenticate
60. user = backend.authenticate(
credentials) credentials)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/backends.py" in authenticate authenticate
204. user_info = ldap_authenticate(username, password) password)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default ldap_authenticate_default
61. try: try:
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default ldap_authenticate_default
61. try:
File "/usr/lib64/python2.6/bdb.py" in trace_dispatch trace_dispatch
46. return self.dispatch_line(frame) self.dispatch_line(frame)
File "/usr/lib64/python2.6/bdb.py" in dispatch_line dispatch_line
65. if self.quitting: raise BdbQuit

Exception Type: BdbQuit at /account/signin/ Exception Value:

Request information information
GET No GET data GET data
POST Variable Value Value
username u'ldap_username' u'ldap_username'
password u'ldap_user_pwd' u'ldap_user_pwd'
persona_assertion u'' u''
password_action u'login' u'login'
login_provider_name u'local' u'local'
login_with_password u'Sign in' in'
csrfmiddlewaretoken u'qyYr7c9SURYcS2zfz5nEwH04X59atO37' u'qyYr7c9SURYcS2zfz5nEwH04X59atO37'
next u'/'

Apache config file:

NameVirtualHost <my_hostname>:80
NameVirtualHost <my_hostname>:443

LoadModule rewrite_module /usr/lib64/apache2/mod_rewrite.so

WSGISocketPrefix /var/run/wsgi
WSGIPythonEggs /var/python/eggs

<VirtualHost <my_url>:80>
     ServerAdmin you@example.com
     DocumentRoot /data/askbot/my_askbot_site
     ServerName <my_server_name>

     #aliases to serve static media directly
     #will probably need adjustment
     Alias /m/ /data/askbot/my_askbot_site/static/
     Alias /upfiles/ /data/askbot/my_askbot_site/askbot/upfiles

     <Directory /data/askbot/my_askbot_site>
       Order allow,deny
       Allow from all
    </Directory>

     <DirectoryMatch "/data/askbot/my_askbot_site/askbot/skins/([^/]+)/media">
        Order deny,allow
        Allow from all
     </DirectoryMatch>

     <Directory "/data/askbot/my_askbot_site/askbot/upfiles">
        Order deny,allow
        Allow from all
     </Directory>
     #must be a distinct name within your apache configuration
     WSGIDaemonProcess askbot2
     WSGIProcessGroup askbot2
     WSGIScriptAlias / /data/askbot/my_askbot_site/django.wsgi
     #make all admin stuff except media go through secure connection
     CustomLog /var/log/apache2/askbot_access_log common
     ErrorLog /var/log/apache2/askbot_error_log
     LogLevel debug
</VirtualHost>

LDAP authentication ok from manage.py but crash from Apache

I installed askbot 0.7.50 on Suse SLES11 SP3. I configured it to allow (only) login via LDAP following the optional-modules/ldap-authentication documentation.

When I run it from Apache I can login as local admin user (admin is a local user, not from LDAP). Also when I stop Apache and run askbot with "python manage.py runserver" LDAP login works absolutely fine.

However when I run askbot via Apache and then try to login with an LDAP account, AskBot crashes. I will attach the crash logs (from running AskBot in debug mode) and Apache config file below.

If anybody has a clue what could be the cause of this, I would be glad to hear.

BdbQuit at /account/signin/

No exception supplied

Request Method: POST
Request URL: http://<my_url>/account/signin/
Django Version: 1.5.11
Exception Type: BdbQuit
Exception Location: /usr/lib64/python2.6/bdb.py in dispatch_line, line 65
Python Executable: /usr/bin/python Python
Version: 2.6.9 Python Path:

Server time: Mon, 23 Feb 2015 08:20:23 -0600

Environment:

Request Method: POST Request URL: http://<my_url>/account/signin/

Django Version: 1.5.11 Python Version: 2.6.9 Installed Applications: ('longerusername', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.humanize', 'django.contrib.sitemaps', 'django.contrib.messages', 'compressor', 'askbot', 'askbot.deps.django_authopenid', 'south', 'askbot.deps.livesettings', 'keyedcache', 'robots', 'django_countries', 'djcelery', 'djkombu', 'followit', 'tinymce', 'group_messaging') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware', 'askbot.middleware.forum_mode.ForumModeMiddleware', 'askbot.middleware.cancel.CancelActionMiddleware', 'django.middleware.transaction.TransactionMiddleware', 'askbot.middleware.view_log.ViewLogMiddleware', 'askbot.middleware.spaceless.SpacelessMiddleware')

Traceback:
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/core/handlers/base.py" in get_response
113. response = callback(request, callback_args, callback_kwargs)*callback_args, * *callback_kwargs)
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/utils/decorators.py" in _wrapped_view
91. response = view_func(request, *args, *
kwargs)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/views.py" in signin
471. method = 'ldap'
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/contrib/auth/__init__.py" in authenticate
60. user = backend.authenticate(
credentials)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/backends.py" in authenticate
204. user_info = ldap_authenticate(username, password)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default
61. try:
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default
61. try:
File "/usr/lib64/python2.6/bdb.py" in trace_dispatch
46. return self.dispatch_line(frame)
File "/usr/lib64/python2.6/bdb.py" in dispatch_line
65. if self.quitting: raise BdbQuit

Exception Type: BdbQuit at /account/signin/ Exception Value:

Request information
GET No GET data
POST Variable Value
username u'ldap_username'
password u'ldap_user_pwd'
persona_assertion u''
password_action u'login'
login_provider_name u'local'
login_with_password u'Sign in'
csrfmiddlewaretoken u'qyYr7c9SURYcS2zfz5nEwH04X59atO37'
next u'/'

Apache config file:

NameVirtualHost <my_hostname>:80
NameVirtualHost <my_hostname>:443

LoadModule rewrite_module /usr/lib64/apache2/mod_rewrite.so

WSGISocketPrefix /var/run/wsgi
WSGIPythonEggs /var/python/eggs

<VirtualHost <my_url>:80>
     ServerAdmin you@example.com
     DocumentRoot /data/askbot/my_askbot_site
     ServerName <my_server_name>

     #aliases to serve static media directly
     #will probably need adjustment
     Alias /m/ /data/askbot/my_askbot_site/static/
     Alias /upfiles/ /data/askbot/my_askbot_site/askbot/upfiles

     <Directory /data/askbot/my_askbot_site>
       Order allow,deny
       Allow from all
    </Directory>

     <DirectoryMatch "/data/askbot/my_askbot_site/askbot/skins/([^/]+)/media">
        Order deny,allow
        Allow from all
     </DirectoryMatch>

     <Directory "/data/askbot/my_askbot_site/askbot/upfiles">
        Order deny,allow
        Allow from all
     </Directory>
     #must be a distinct name within your apache configuration
     WSGIDaemonProcess askbot2
     WSGIProcessGroup askbot2
     WSGIScriptAlias / /data/askbot/my_askbot_site/django.wsgi
     #make all admin stuff except media go through secure connection
     CustomLog /var/log/apache2/askbot_access_log common
     ErrorLog /var/log/apache2/askbot_error_log
     LogLevel debug
</VirtualHost>

LDAP authentication ok from manage.py but crash from Apache

I installed askbot 0.7.50 on Suse SLES11 SP3. I configured it to allow (only) login via LDAP following the optional-modules/ldap-authentication documentation.

When I run it from Apache I can login as local admin user (admin is a local user, not from LDAP). Also when I stop Apache and run askbot with "python manage.py runserver" LDAP login works absolutely fine.

However when I run askbot via Apache and then try to login with an LDAP account, AskBot crashes. I will attach the crash logs (from running AskBot in debug mode) and Apache config file below.

If anybody has a clue what could be the cause of this, I would be glad to hear.

BdbQuit at /account/signin/

No exception supplied

Request Method: POST
Request URL: http://<my_url>/account/signin/
Django Version: 1.5.11
Exception Type: BdbQuit
Exception Location: /usr/lib64/python2.6/bdb.py in dispatch_line, line 65
Python Executable: /usr/bin/python Python
Version: 2.6.9 Python Path:

Server time: Mon, 23 Feb 2015 08:20:23 -0600

Environment:

Request Method: POST Request URL: http://<my_url>/account/signin/

Django Version: 1.5.11 Python Version: 2.6.9 Installed Applications: ('longerusername', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.humanize', 'django.contrib.sitemaps', 'django.contrib.messages', 'compressor', 'askbot', 'askbot.deps.django_authopenid', 'south', 'askbot.deps.livesettings', 'keyedcache', 'robots', 'django_countries', 'djcelery', 'djkombu', 'followit', 'tinymce', 'group_messaging') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware', 'askbot.middleware.forum_mode.ForumModeMiddleware', 'askbot.middleware.cancel.CancelActionMiddleware', 'django.middleware.transaction.TransactionMiddleware', 'askbot.middleware.view_log.ViewLogMiddleware', 'askbot.middleware.spaceless.SpacelessMiddleware')

Traceback:
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/core/handlers/base.py" in get_response
113. response = callback(request, *callback_args, * callback_args, *callback_kwargs)
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/utils/decorators.py" in _wrapped_view
91. response = view_func(request, *args, kwargs)*kwargs)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/views.py" in signin
471. method = 'ldap'
File "/usr/local/lib64/python2.6/site-packages/Django-1.5.11-py2.6.egg/django/contrib/auth/__init__.py" in authenticate
60. user = backend.authenticate(
credentials)
*credentials)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/backends.py" in authenticate
204. user_info = ldap_authenticate(username, password)
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default
61. try:
File "/usr/local/lib64/python2.6/site-packages/askbot-0.7.50-py2.6.egg/askbot/deps/django_authopenid/ldap_auth.py" in ldap_authenticate_default
61. try:
File "/usr/lib64/python2.6/bdb.py" in trace_dispatch
46. return self.dispatch_line(frame)
File "/usr/lib64/python2.6/bdb.py" in dispatch_line
65. if self.quitting: raise BdbQuit

Exception Type: BdbQuit at /account/signin/ Exception Value:

Request information
GET No GET data
POST Variable Value
username u'ldap_username'
password u'ldap_user_pwd'
persona_assertion u''
password_action u'login'
login_provider_name u'local'
login_with_password u'Sign in'
csrfmiddlewaretoken u'qyYr7c9SURYcS2zfz5nEwH04X59atO37'
next u'/'

Apache config file:

NameVirtualHost <my_hostname>:80
NameVirtualHost <my_hostname>:443

LoadModule rewrite_module /usr/lib64/apache2/mod_rewrite.so

WSGISocketPrefix /var/run/wsgi
WSGIPythonEggs /var/python/eggs

<VirtualHost <my_url>:80>
     ServerAdmin you@example.com
     DocumentRoot /data/askbot/my_askbot_site
     ServerName <my_server_name>

     #aliases to serve static media directly
     #will probably need adjustment
     Alias /m/ /data/askbot/my_askbot_site/static/
     Alias /upfiles/ /data/askbot/my_askbot_site/askbot/upfiles

     <Directory /data/askbot/my_askbot_site>
       Order allow,deny
       Allow from all
    </Directory>

     <DirectoryMatch "/data/askbot/my_askbot_site/askbot/skins/([^/]+)/media">
        Order deny,allow
        Allow from all
     </DirectoryMatch>

     <Directory "/data/askbot/my_askbot_site/askbot/upfiles">
        Order deny,allow
        Allow from all
     </Directory>
     #must be a distinct name within your apache configuration
     WSGIDaemonProcess askbot2
     WSGIProcessGroup askbot2
     WSGIScriptAlias / /data/askbot/my_askbot_site/django.wsgi
     #make all admin stuff except media go through secure connection
     CustomLog /var/log/apache2/askbot_access_log common
     ErrorLog /var/log/apache2/askbot_error_log
     LogLevel debug
</VirtualHost>