【问题标题】:The FastCGI process exited unexpectedly - (Django iis hosting)FastCGI 进程意外退出 - (Django iis 托管)
【发布时间】:2021-10-28 18:33:10
【问题描述】:

我正在关注this tutorial 在 Windows IIS 管理器上托管我的 django 应用程序。 完成教程中的所有步骤后,我得到了以下HTTP Error 500.0 - Internal Server Error

有什么办法可以解决这个问题吗??我没有找到任何解决方案...

我正在使用,

Python==3.10.0  
Django==3.2.8  
wfastcgi==3.0.0  
IIS 10.0.17763.1

【问题讨论】:

  • 这是一个FastCGI问题,建议你查看python端的日志,应该有详细的错误信息。
  • 如何查看日志?
  • 您可以通过单击“站点”下的站点,双击“日志记录”,然后单击右侧“操作”下的“查看日志文件...”来查找 IIS 服务器日志控制板。您可以通过在设置文件中定义它并确保日志文件具有适当的权限来添加 Django 日志记录,我建议从示例 #3 开始:记录到 django 文档 (docs.djangoproject.com/en/3.2/topics/logging/#examples) 中的文件。但是,当我遇到您的问题时,IIS 日志没有帮助,并且请求没有到达 Django 以进行记录。

标签: django iis wfastcgi


【解决方案1】:

我也遇到了同样的问题(错误代码 0x00000067),并且 24 小时都在用头撞墙。我是 Windows 服务器的新手,但十多年来一直在 Linux 服务器上部署 Django 应用程序。

就我而言,我在几个方面偏离了您引用的 Johnnyboycurtis 教程:

  • 我尝试在虚拟环境中安装每个 python 包
  • 我没有将 Python 安装在 C:\,而是隐藏在我的用户的 AppData\local\Programs\Python 目录下(默认)

我假设您的应用在运行 Django 开发服务器 (py manage.py runserver -> http://localhost:8000 ) 时可以正常工作,您的应用看起来与预期一样(当 DEBUG = True 在 settings.py 中时)

修复我的代码安装意味着采取以下步骤:

  • 导航到 C:\Users\MyUserName\AppData\local\Programs\Python,并遵循 Johnnyboycurtis' instructions(但在 Python310 而不是 Python37 上)我为我的 AppPool 添加了运行 Python 的权限。
  • 我必须在我的虚拟环境之外安装 wfastcgi:
    • deactivate(如果你激活了 python 虚拟环境)
    • py -m pip install wfastcgi

请注意,我不必更改假设我的虚拟环境的任何其他设置:

  • web.config: 'scriptProcessor' 仍然指向我的虚拟环境中的 python.exe 和 wfastcgi.py
  • IIS FastCGI 设置“完整路径”和“参数”都引用了我的虚拟环境中的文件

【讨论】:

猜你喜欢
  • 2018-03-27
  • 2012-08-13
  • 2014-05-25
  • 1970-01-01
  • 2020-05-19
  • 2017-08-02
  • 2016-08-11
  • 2020-07-18
  • 1970-01-01
相关资源
最近更新 更多