使用 mod_wsgi 和 WinSCP 在 Apache 服务器上部署 Flask 应用程序
Posted
技术标签:
【中文标题】使用 mod_wsgi 和 WinSCP 在 Apache 服务器上部署 Flask 应用程序【英文标题】:Deploy Flask app on Apache Server using mod_wsgi and WinSCP 【发布时间】:2015-08-09 02:09:18 【问题描述】:我想在 Apache 服务器上部署我的 Flask 应用程序。我在服务器上有一个帐户,并被告知“该服务器可用于运行用 Python 编写的脚本和 Web 应用程序(使用 django 和 mod_wsgi)”。
我在 Windows 上,要传输文件我必须使用 FTP 客户端 - 所以我使用的是 WinSCP。
安装 mod_wsgi 并不像我想象的那么简单,而且我无法在线获得任何清晰的文档。
因为服务器已经可以使用 mod_wsgi 运行 Python 脚本,这是否意味着我只需要创建一个 .wsgi 文件还是我仍然需要下载它? 我不知道该怎么做。
【问题讨论】:
你有没有通过这个链接:flask.pocoo.org/docs/0.10/deploying/mod_wsgi 您可能需要向为您提供服务器的人员询问 Apache 是如何设置的,如果是,以及如何向其中添加应用程序。如果您不知道,我们很难猜到。 @GrahamDumpleton 这是 Apache 2.4 知道版本本身并不意味着什么。当您说您有帐户时,您是否也有超级用户访问权限?它是什么 Linux 变种? 我们不知道活动配置。托管您的 apache 服务器的人员应提供有关将 .wsgi 文件放在何处的说明(如果它是多租户 apache,您可能使用 FTP 的访问权限有限,并且没有 ssh、sudo 或对 apache 日志的访问权限)。从小处着手,使用“hello world”文件。运行 wsgi 链接后,就可以添加 Flask 应用了。 【参考方案1】:首先你需要检查服务器上是否真的启用了 mod_wsgi,然后你必须检查你的虚拟主机是如何在 apache 中配置的。在那里你会找到你必须给 wsgi 文件起的名字。
如果您对服务器有 shell 访问权限,您可以使用以下命令来做到这一点:
检查 mod_wsgi:
sudo apache2ctl -t -D DUMP_MODULES | grep wsgi
检查 .wsgi 文件应该有什么名称:
sudo grep WSGIScriptAlias /etc/apache2/sites-enabled/yoursite.conf
【讨论】:
以上是关于使用 mod_wsgi 和 WinSCP 在 Apache 服务器上部署 Flask 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
XAMPP + mod_wsgi + python Windows 7