2010-07-23 15 views
41

He estado jugando con mi propio servidor web (Apache + Ubuntu) y python. Por lo que he visto hay 3 principales formas de hacer esto (?):mod_wsgi, mod_python o solo cgi?

  1. Apache configurado para manejar .py como CGI
  2. Apache configurado para utilizar mod_python que se ha quedado desfasado
  3. (?) Apache configurado para usar mod_wsgi

Recuerdo haber leído que Django prefiere mod_wsgi, y estoy un poco interesada en aprender Django (he oído que su tutorial oficial es bastante excelente).

¿Cuál es la configuración 'recomendada'? Supongo que ya no hay motivo para usar mod_python, pero ¿cuáles son las diferencias entre manejar .py como cgi y mod_wsgi? ¿Es posible ejecutarlos en tándem (y te gustaría?), ¿O es solo una idea ridícula y debería dejar de pensar en cosas tan locas?

Creo que realmente estoy buscando un manual de Apache + Python (los enlaces también son buenos) - nada de lo que he encontrado hasta ahora ha sido terriblemente informativo - fueron principalmente de cómo hacerlo.

Respuesta

30

mod_python está muerto, por lo que usar mod_python probablemente no sea una buena idea para nuevos proyectos. Personalmente, prefiero usar mod_wsgi sobre CGI (o FastCGI). Es dead-simple de configurar, y mucho más eficiente.

+13

Refutación del sitio mod_python: 'Actualmente, mod_python no se encuentra en desarrollo activo.Esto no quiere decir que esté "muerto" como algunas personas han afirmado. Simplemente significa que el código y el proyecto son lo suficientemente maduros cuando se requiere muy poco para mantenerlo ". (http://www.modpython.org/) –

+5

Además, está en desarrollo activo de nuevo, con una nueva versión en noviembre de 2013. – nedned

15
  1. No utilice CGI. Es ineficiente. Generando un nuevo proceso para cada solicitud. No, gracias

  2. 't No pasa mucho tiempo con mod_python

  3. Uso mod_wsgi.

Si desea escribir cosas similares a CGI sin un marco, use mod_wsgi de todos modos. El estándar WSGI (PEP 333) es esencial para crear aplicaciones web de una forma fácil, intercambiable, reutilizable, plug-and-jugable.

8

Me gustaría ir con mod_wsgi también.

Si desea una comprensión más profunda sobre la cuestión, echar un vistazo a esto:

Eso está muy bien!