📅  最后修改于: 2020-10-19 03:37:27             🧑  作者: Mango
为了从开发环境切换到成熟的生产环境,需要在真实的Web服务器上部署应用程序。根据您所拥有的,可以使用不同的选项来部署TurboGears Web应用程序。
mod_wsgi是Graham Dumpleton开发的Apache模块。它允许使用Apache Web服务器提供WSGI程序。
首先,为您的平台安装Apache 2.X(如果尚未安装)。安装Apache后,请安装mod_wsgi。在服务器上创建并激活Python虚拟环境,然后在其中安装TurboGears。
在应用程序导向器中安装应用程序,然后创建一个名为app.wsgi的脚本。
如下配置Apache安装-
ServerName www.site1.com
WSGIProcessGroup www.site1.com
WSGIDaemonProcess www.site1.com user =
group = www-data threads = 4 python-path =
WSGIScriptAlias myapp/app.wsgi
#Serve static files directly without TurboGears
Alias /images
Alias /css
Alias /js
CustomLog
ErrorLog
在浏览器上键入http://www.site1.com/以访问该应用程序。
马戏团是一个进程和套接字管理器。它可以用于监视和控制进程和套接字。与Chaussette WSGI服务器配对时,它可以成为部署应用程序和管理应用程序所需的任何相关过程的强大工具。
从以下URL安装适用于Python的Google AppEngine SDK :https://cloud.google.coms
在您的系统上安装Google AppEngine。然后打开Google Developer Console并使用您的Google帐户登录-https: //console.developers.google.com/start
创建一个名为mytgapp的新项目-
使用Google AppEngine启动器,创建一个名为mytgapp的新应用程序。
以下文件将在指定目录中创建-
默认情况下,创建的应用程序依赖于Webapp2框架。要删除此依赖性,请编辑app.yaml文件并删除以下部分-
libraries:
- name: webapp2
version: "2.5.2"
在名为mytgapp的目录中创建一个临时虚拟环境,然后安装TurboGears。在其中创建一个TurboGears应用程序。现在,我们可以继续编辑由AppEngine启动的main.py文件,以运行我们的应用程序,并在那里实际编写TurboGears应用程序。
在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 "Hello World
"
config = AppConfig(minimal = True, root_controller = RootController())
app = config.make_wsgi_app()
现在从AppEngine Launcher运行该应用程序,然后单击“浏览”按钮以查看该应用程序在本地主机上的正常运行。
我们已经在开发人员控制台中创建了一个名为mytgapp的项目。现在,单击启动器中的部署按钮。部署过程结束后,请http://mytgapp.appspot.com/访问以在线查看我们的应用程序。