简体   繁体   中英

mod_wsgi, mod_python, or just cgi?

I've been playing around with my own webserver (Apache+Ubuntu) and python. From what I've seen there are 3(?) main ways of doing this:

  1. Apache configured to handle .py as cgi
  2. Apache configured to use mod_python that is now outdated(?)
  3. Apache configured to use mod_wsgi

I recall reading that Django prefers mod_wsgi, and I'm kinda interested in learning Django (I've heard their official tutorial is rather excellent).

What is the 'recommended' setup? I presume there's really no reason to use mod_python anymore, but what are the differences between handling .py as cgi, and mod_wsgi? Is it possible to run them in tandem (and would you want to?), or is that just a ridiculous idea and I should stop thinking such crazy things?

I guess really I'm just looking for a primer on Apache+Python (links are also good) - nothing I've come across so far has been terribly informative - they were mainly just how-to's.

mod_python is dead, so using mod_python probably isn't a good idea for new projects. Personally, I prefer to use mod_wsgi over CGI (or FastCGI). It's dead-simple to set up, and much more efficient.

  1. Don't use CGI. It's inefficient. Spawning a new process for each request. No thanks

  2. Dont't spend much time with mod_python

  3. Use mod_wsgi.

If you want to write CGI-like stuff without a framework, use mod_wsgi anyway. The WSGI standard ( PEP 333 ) is essential for creating web applications in an easy, interchangeable, reusable, plug-and-playable way.

I would go with mod_wsgi too.

If you want a deeper understanding about the question, have a look at this:

Good stuff!

Mod_Python

mod_python is alive and well. See here: http://modpython.org/ . Furthermore, here's the documentation for the latest release, 3.5.0, with support for Python 3: http://modpython.org/live/current/modpython.pdf . Currently I use it.

Mod_WSGI

mod_wsgi thinks of itself as not to be used barebones, but with a framework, such as Flask.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM