TurboGears - Implementación

Para pasar de un entorno de desarrollo a un entorno de producción completo, la aplicación debe implementarse en un servidor web real. Dependiendo de lo que tenga, existen diferentes opciones disponibles para implementar una aplicación web TurboGears.

Apache con mod_wsgi

El mod_wsgi es un módulo de Apache desarrollado por Graham Dumpleton. Permite que los programas WSGI se sirvan utilizando el servidor web Apache.

En primer lugar, instale Apache 2.X para su plataforma, si aún no lo ha hecho. Una vez que haya instalado Apache, instale mod_wsgi. Cree y active el entorno virtual Python en el servidor e instale TurboGears en él.

Instale su aplicación dentro del director de la aplicación, luego cree un script llamado app.wsgi.

Configure la instalación de Apache de la siguiente manera:

<VirtualHost *:80>
   ServerName www.site1.com
   WSGIProcessGroup www.site1.com
   WSGIDaemonProcess www.site1.com user = <username> 
      group = www-data threads = 4 python-path = <pythonpath>
   WSGIScriptAlias myapp/app.wsgi
	
   #Serve static files directly without TurboGears
   Alias /images
   Alias /css
   Alias /js
   CustomLog
   ErrorLog
</VirtualHost>

Reiniciar Apache

Tipo http://www.site1.com/ en un navegador para acceder a la aplicación.

TurboGears bajo Circus y Chaussette

Circus es un administrador de procesos y conexiones. Puede usarse para monitorear y controlar procesos y sockets. Cuando se combina con el servidor Chaussette WSGI, puede convertirse en una herramienta poderosa para implementar su aplicación y administrar cualquier proceso relacionado que sus aplicaciones necesiten.

TurboGears - GoogleAppEngine

Instale el SDK de Google AppEngine para Python desde la siguiente URL: https://cloud.google.coms

Instale Google AppEngine en su sistema. Luego, abra la consola de desarrollo de Google e inicie sesión con su cuenta de Google:https://console.developers.google.com/start

Crea un nuevo proyecto llamado mytgapp -

Con Google AppEngine Launcher, cree una nueva aplicación llamada mytgapp.

Los siguientes archivos se crearán en el directorio especificado:

  • app.yaml
  • favicon.ico
  • index.yaml
  • main.py

De forma predeterminada, la aplicación creada se basa en el marco Webapp2. Para eliminar esta dependencia, edite el archivo app.yaml y elimine la siguiente parte:

libraries:
   - name: webapp2
   version: "2.5.2"

Cree un entorno virtual temporal en un directorio llamado mytgapp e instale TurboGears. Cree una aplicación TurboGears en él. Ahora podemos continuar editando elmain.py que es iniciado por AppEngine para ejecutar nuestra aplicación y escribir una aplicación TurboGears allí.

Agregue el siguiente contenido en main.py -

import os
import site
site.addsitedir(os.path.join(os.path.dirname(__file__), 'packages'))
from tg import expose, TGController, AppConfig

class RootController(TGController):
   @expose()
   def index(self):
      return "<h1>Hello World</h1>"
		
config = AppConfig(minimal = True, root_controller = RootController())
app = config.make_wsgi_app()

Ahora ejecute la aplicación desde AppEngine Launcher y haga clic en el botón Examinar para ver que la aplicación funciona correctamente en el host local.

Ya hemos creado un proyecto llamado mytgapp en la consola del desarrollador. Ahora haga clic en el botón de implementación en el Lanzador. Una vez finalizado el proceso de implementación,http://mytgapp.appspot.com/ visite para ver nuestra solicitud en línea.