First time here? Check out the FAQ!
1

Deploying askbot to passenger

Does anyone have a code snippet to install Askbot into Passenger? I'm on Dreamhost and can't really edit httpd.conf, like manual suggests.

OSQA has a passenger_wsgi.py, for instance - I'd like to have one like that. And I don't even know Python, not saying Django.

edit: maybe it's just my configuration broken. I have:

  • Dreamhost account with web directory set to ~/mysite.com/public
  • local Python 2.5 in ~local
  • askbot directory set to ~/mysite.com/askbot and forum directory to ~/mysite.com/askbot/forum
  • the following passenger_wsgi.py in ~/mysite.com/ directory:

.

import sys,os
INTERP = "/home/mysite/local/bin/python"
if sys.executable != INTERP: os.execl(INTERP, INTERP, *sys.argv)
sys.path.append("/home/mysite/mysite.com/")
sys.path.append("/home/mysite/mysite.com/askbot/forum")
os.environ['DJANGO_SETTINGS_MODULE'] = 'askbot.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

The site just dies. In httpd's error.log I get things like:

[Fri Jun 24 14:24:53 2011] [error] [client xx.xx.xx.xx] Premature end of script headers:

Victor's avatar
11
Victor
updated 2011-06-24 17:04:58 -0600, asked 2011-06-24 16:21:02 -0600
edit flag offensive 0 remove flag close merge delete

Comments

sorry, the server is slow as I am abusing it right now. I'll try mod_passenger.
Evgeny's avatar Evgeny (2011-06-24 16:39:14 -0600) edit
add a comment see more comments

1 Answer

0

I think that simply renaming django.wsgi (or copying) to passenger_wsgi.py should do the trick.

Looking at the manuals for passenger and wsgi - I do not see anything passenger-specific in those files.

edit: there is no askbot/forum in askbot. If your settings.py is in mysite.com, then instead of your sys.path.append() have

sys.path.append('/home/mysite')
sys.path.append('/home/mysite/mysite.com')

Askbot actually has it's own slightly different version of django.wsgi in askbot/setup_templates that should just work regardless of your specific paths (well in your case you need a custom line to replace the python interpreter).

Evgeny's avatar
13.2k
Evgeny
updated 2011-06-24 17:24:12 -0600, answered 2011-06-24 16:43:37 -0600
edit flag offensive 0 remove flag delete link

Comments

I copied `passenger_wsgi.py` from OSQA (replacting respective parts) and my test site just stopped responding. I see that it's mostly generated from `django.wsgi`. I think I'll add more details about my specific case.
Victor's avatar Victor (2011-06-24 16:56:07 -0600) edit
So my main concern is - what's the problem with my configuration?
Victor's avatar Victor (2011-06-24 17:23:25 -0600) edit
A question - which directory contains your settings.py?
Evgeny's avatar Evgeny (2011-06-24 18:39:06 -0600) edit

Gave it another try. Did no "startforum", just used the current manual. Still, result is the same - site just plain doesn't respond. Can it be a problem with no 500 error logging? (http://wiki.dreamhost.com/PassengerWSGI#500ErrorswithPassengerWSGIWorkaround) What can I do to diagnose this?

Victor's avatar Victor (2011-09-11 17:56:48 -0600) edit

But does it work in simple django runserver? If it does, then issues are due to your deployment, otherwise - with the application. Are you deploying askbot with some other apps on the same site?

Evgeny's avatar Evgeny (2011-09-11 19:27:41 -0600) edit
add a comment see more comments