gpt4 book ai didi

python - 当开发服务器运行时(在 Kudu 上),基于 Django 的 Azure Web App 陷入困境

转载 作者:行者123 更新时间:2023-12-01 04:18:38 25 4
gpt4 key购买 nike

为了将应用程序从 Heroku 迁移到 Azure,我最近创建了一个 Django Azure Web 应用程序,将其连接到我的 GitHub 帐户,并通过 git push azure master 将我现有的应用程序代码推送到它上面。经过一些小问题后,我也得到了正确安装所需的所有软件包(小问题是安装需要 pythonwheels 的软件包)。

我尚未在应用程序上运行 syncdb(数据库托管在单独的虚拟机上;它是 postgresql)。但我确实尝试运行 env\scripts\python manage.py runserver 来查看开发服务器是否会启动。 事实并非如此; Kudu 卡住了(如下所示)。 enter image description here

如何让它运行?我的web.config文件如下:

<configuration>
<appSettings>
<add key="pythonpath" value="%SystemDrive%\home\site\wwwroot" />
<add key="WSGI_HANDLER" value="hostingstart-python.application" />
<add key="DJANGO_SETTINGS_MODULE" value="unconnectedreddit.settings" />
</appSettings>
</configuration>

我的项目名为 unconnectedreddit,它位于 wwwroot 内。文件 manage.pyProcfileweb.config 也放置在这个级别。 Procfile 是 Heroku 的遗产;它包含有关在 Heroku 上运行什么进程的代码,例如: web: newrelic-admin run-program waitress-serve --port=$PORT unconnectedreddit.wsgi:application

文件夹unconnectedreddit(参见附图)包含settings.pywsgi.py文件。它还包含一个名为 template 的文件夹和一个名为 static 的文件夹。

应用程序文件位于 links 文件夹内(即 models.pyviews.pyforms.py).

所有软件包都安装在 env/Lib/site-packages/ 中。

有人可以解释我的设置缺少什么以及如何纠正它吗?也许是 web.config 配置错误,也许我需要 Azure 中相当于 Heroku 的 Procfile 的内容(尽管这对于开发服务器来说真的有必要吗?),或者可能是其他原因。

如果您觉得需要,我会分享更多信息。

最佳答案

将 Django 应用程序作为 Web 应用程序运行应该没问题。文档建议为应用程序设置一个 virtualenv,请参阅 https://azure.microsoft.com/en-us/documentation/articles/web-sites-python-create-deploy-django-app/#web-app-development---maclinux---command-line

除非您需要使用 HttpPlatformHandler,否则

Web.config 是不必要的。如果您有入门需求,请参阅http://www.iis.net/learn/extensions/httpplatformhandler/httpplatformhandler-configuration-reference .

每个 Web 应用程序都会分配一个端口号,该端口号绑定(bind)到 HTTP_PLATFORM_PORT 环境变量。应用服务将终止传入请求并将其转发到指定端口。如果 Web 应用程序由于某种原因无法运行 Django 应用程序,您可以显式告诉 HttpPlatformHandler 如何执行该应用程序,例如通过编写一个运行 python manage.py runserver 0.0.0.0:%HTTP_PLATFORM_PORT% 的批处理文件并让 HttpPlatformHandler 执行该文件。

关于python - 当开发服务器运行时(在 Kudu 上),基于 Django 的 Azure Web App 陷入困境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34005852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com