0

我一直在考虑设置一个 Web 服务器来使用 Python,并且我已经使用 mod_wsgi 在 Debian 7 Wheezy 上安装了 Apache 2.2.22。我已经启动了初始页面,Apache 将显示我目录中的 wsgi 文件的内容。

但是,我一直在研究如何部署 Python 应用程序并且我必须管理,我发现其中一些有点令人困惑。我来自 PHP 的背景,它实际上是安装你需要的东西,你已经启动并运行,PHP 正在按照它应该的方式处理。

这和 Python 一样吗?在我设置的 wsgi 文件之外,我似乎无法处理任何事情。如果服务器不抛出“500”错误,我无法从其他文件导入任何内容。我已经查看了 Google 和 Bing 试图找到这个问题的答案,但我似乎找不到任何东西,或者不知道我一直在寻找的就是答案。

我非常感谢你们可以提供的任何帮助。

提前致谢!(如果我需要发布任何编码,我可以这样做,我只是不知道你们需要什么,如果有的话,就编码示例而言......)

4

1 回答 1

1

Python 与 PHP 的不同之处在于,PHP 会针对您网站的每次点击单独执行整个程序,而 Python 运行驻留在内存中的“工作进程”。

您需要某种 Web 框架来为您完成这项工作(您可以编写自己的,但使用其他人的框架会更容易)。Flask 就是一个轻量级的例子。Django 是一个非常沉重的例子。选择一个并遵循该框架的说明,或查找该框架的教程。由于框架不同,大多数关于使用 Python 处理 Web 服务的实用文档都集中在框架上,而不仅仅是语言本身。

几乎任何 python web 框架都会有一个可以在本地运行的开发服务器,所以你不需要担心部署。当您准备好部署时,Apache 将工作,尽管使用 Gunicorn 或其他特定于 python 的网络服务器通常更容易和更好,然后如果您需要更多网络服务器功能,请将 nginx 或 Apache 设置为反向代理。Apache 是一个非常繁重的应用程序,只用于 wsgi 功能。您还可以选择部署到像 Heroku 这样的 PaaS 服务(开发工作免费,生产应用程序需要花钱),它将为您处理大量的系统管理员工作。

顺便说一句,如果你没有使用 virtualenv 来设置你的 Python 环境,你应该研究一下。这将使跟踪您已安装的内容、安装新软件包以及隔离环境变得更加容易,这样您就可以在同一台计算机上处​​理多个项目。

于 2013-11-15T02:35:33.007 回答