问题描述
我在Python中构建了Flask应用并将其部署到了Azure。我在本地测试了该应用,一切正常。我正在使用Kudu在Windows和Python 3.6上进行部署。
此网站正在运行Python 3.6.6
据我所见,故障出在Kudu web.config
文件上,该文件如下所示:
<configuration>
<appSettings>
<add key="pythonpath" value="%systemDrive%\home\site\wwwroot" />
<add key="Wsgi_HANDLER" value="hostingstart-python.application" />
</appSettings>
</configuration>
由于某种原因,它指向hostingstart-python.application
(具有.html
和.py
文件),该文件确实显示了默认页面。
我的/wwwroot
文件夹如下所示:
env
templates
.gitignore
app.py
config.py
file_manager.py
hostingstart-python.html
hostingstart-python.py
README.md
requirements.txt
web.config
我尝试了web.config
文件的各种版本,例如以下版本,但是没有任何运气。
对于Wsgi_HANDLER
,我输入了Web应用程序的名称,但是也许必须有另一个名称吗?
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Wsgi_HANDLER" value="UploadToolApp.app"/>
<add key="PYTHONPATH" value="D:\home\site\wwwroot"/>
<add key="Wsgi_LOG" value="D:\home\LogFiles\wfastcgi.log"/>
</appSettings>
<system.webServer>
<handlers>
<add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptprocessor="D:\home\python364x64\python.exe|D:\home\python364x64/scripts\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
</handlers>
</system.webServer>
</configuration>
这将导致:
解决方法
解决方案是切换到Linux计算机,然后一切按预期运行。