Differences

This shows you the differences between two versions of the page.

Link to this comparison view

litespeed_wiki:other-ext-apps:python-apache-mod_wsgi [2015/07/29 15:03] (current)
Michael Alegre created
Line 1: Line 1:
 +''​[[http://​code.google.com/​p/​modwsgi/​|mod_wsgi]] is an Apache module which "can host any Python application which supports the Python WSGI interface"​. Litespeed has no lsapi-wsgi yet at the time being(lsws 4.0.12), however, if an Python app running under apache with mod_wsgi, it can run under litespeed too through wsgi-ajp.''​
  
 +
 +====== the "Hello world" app ======
 +
 +''/​home/​python_app>​cat hello.py''​
 +
 +
 +  def application(environ,​ start_response):​
 +    status = '200 OK'
 +    output = 'Hello World!'​
 +    response_headers = [('​Content-type',​ '​text/​plain'​),​
 +                        ('​Content-Length',​ str(len(output)))]
 +    start_response(status,​ response_headers)
 +    return [output]
 +
 +====== Apache configuration ======
 +
 +''​mod_wgsi configuration in Apache httpd_conf:''​
 +
 +  LoadModule wsgi_module modules/​mod_wsgi.so
 +  WSGIScriptAlias /hello /​home/​python_app/​hello.py
 +
 +''​access url: yourdomain.com/​hello''​
 +
 +====== run the app in litespeed ======
 +
 +==== 1.install ajp-wsgi ====
 +
 +http://​www.saddi.com/​software/​ajp-wsgi/​
 +
 +==== 2. startup ajp-wsgi ====
 +
 +''​run ajp-wsgi in background:''​
 +  /​home/​python_app>​ajp-wsgi -v -B -l ajp.log hello application /hello2
 +''​or run in foreground:''​
 +  /​home/​python_app>​ajp-wsgi -v hello application /hello2
 +
 +''​above hello refer to /​home/​python_app/​hello.py''​
 +
 +''/​hello2 refer url: yourdomain.com/​hello2''​
 +
 +==== 3.under Server or vhost, define a "​Servlet Engine"​ External App ====
 +
 +''​when under Server, it's lsws admin console-->​Server-->​External App-->​Add''​
 +
 +''​Servlet Engine Definition example:''​
 +
 +  Name:ajp
 +  Address:​127.0.0.1:​8009
 +  Max Connections:​200
 +  Connection Keepalive Timeout:30
 +  Initial Request Timeout (secs):20
 +  Retry Timeout (secs):0
 +  Response Buffering:​No
 +
 +==== 4.under a vhost, define a Servlet context ====
 +
 +''​Example of Servlet Context Definition:''​
 +
 +  URI:/hello2
 +  Servlet Engine:​[Server Level]: ajp
 +
 +''​access url: yourdomain.com/​hello2''​
  • Admin
  • Last modified: 2015/07/29 15:03
  • by Michael Alegre