I'm using Phusion Passenger with a ruby app and I'd also like to set it up to work with an django appengine app I'm working on.
Googling for "passenger_wsgi.py" I was able to get the following very simple non-django app working on passenger:
passenger_wsgi.py:
def application(environ, start_response):
response_headers = [('Content-type','text/plain')]
start_response('200 OK', response_headers)
return ['Hello World!\n']
However, if I add the line import django.core.handlers.wsgi
into the mix, I get 'An error occurred importing your passenger_wsgi.py'. By printing out the sys.path I've discovered that at least part of the reason is because Passenger is using the wrong python installation on my machine.
How can I configure Passenger (on apache) to use /opt/local/bin/python2.5
instead of the system default python?
You can specify the python interpreter via the PassengerPython
variable in the server config, virtual host, directory, or .htaccess file.
apache: PassengerPython
nginx: passenger_python
standalone: --python
I discovered that if I changed the hashbang at the first line of passenger's request_handler.py
file to #!/opt/local/bin/python2.5
, passenger used the correct python. But surely there must be a better way than modifying passenger's distribution?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With