Ste*_*han 4 python wsgi python-2.7 pyramid
我在本地虚拟环境中成功运行了最简单的金字塔应用程序.我现在正在研究这个教程,但我试图通过在我的个人托管网站上运行它来更进一步,我用它来搞乱这样的东西.
我的问题是.我将什么make_server(host, port, app)作为参数传递给我,我要去检查它是否正在运行?我知道这是一个简单的问题,我只是不习惯这种工作而且文档没有帮助我.
奖励积分:
在本地虚拟环境中运行此操作与在此类Web应用程序方面正确托管之间有什么区别?
重要的编辑:我的提供商是bluehost,因为我没有专用的IP,我不能打开我自己的端口,这让我想知道这是否可能
实际上,在"真实"的Web服务器上托管Python应用程序与在本地计算机上运行它完全不同:本地您依赖于通常内置于框架中的小型Web服务器 - 但是,该Web服务器通常具有局限性(例如,它可能只在单个线程中执行请求).一些框架(Django)明确声明他们的内置服务器应该只用于开发.
在生产环境中,Python应用程序通常由"工业级"Web服务器提供服务,例如Apache或Nginx,它负责解决诸如绑定到低端口,删除权限,产生多个"工作"进程,处理虚拟等问题.主机,消毒畸形请求等.Python应用程序,然后在Web服务器中使用类似的运行mod_wsgi或fcgi用于Apache或uwsgi为Nginx的.或者,您的应用程序作为单独的进程运行,侦听127.0.0.1:6543(就像您在本地执行一样),"前"Web服务器代理对您的应用程序的所有请求并返回.
重点是:在通用共享主机上托管Python应用程序可能很棘手/不可能,除非您的提供程序明确支持托管WSGI应用程序(询问他们的说明)
另一点:这些天你可以获得5美元/美元的专用虚拟机,你可以安装任何你想要的东西,而不是与任何人分享.托管Python网站比处理共享托管更容易.
啊,并回答这个问题:在实际的生产应用程序中,示例的最后两行:
server = make_server('0.0.0.0', 8080, app)
server.serve_forever()
Run Code Online (Sandbox Code Playgroud)
将不会使用 - 而是配置Web服务器,以便它知道该app变量包含您的wsgi应用程序.有关更实际的示例,请参阅文档的下一章.
| 归档时间: |
|
| 查看次数: |
2123 次 |
| 最近记录: |