无法运行wfastcgi-enable命令,Windows Server 2012R2部署Django报错
故障修复方案
wfastcgi-enable命令执行报错修复
- 先确认wfastcgi已正确安装:执行
pip install wfastcgi --force-reinstall强制重新安装,避免安装包损坏 - 检查Python安装目录是否包含中文或空格:如果路径存在特殊字符,建议重新安装Python到无特殊字符的路径(例如
C:\Python38),空格或中文会导致wfastcgi自动注册失败 - 手动注册FastCGI映射:
- 运行
pip show wfastcgi记录Location字段的路径,拼接得到wfastcgi.py的完整路径,例如C:\Python38\Lib\site-packages\wfastcgi.py - 打开IIS管理器,点击服务器根节点,进入「FastCGI设置」,点击右侧「添加应用」
- 可执行文件选择Python安装路径下的python.exe(例如
C:\Python38\python.exe),参数填上述wfastcgi.py的完整路径,点击确定保存
- 运行
IIS访问返回500错误修复
- 确认站点根目录下的web.config配置正确,必须包含以下配置项:
- 处理器映射中对应FastCGI的路径与上述手动添加的路径完全一致
- 环境变量已配置3个必填项:
PYTHONPATH对应Django项目根目录路径、WSGI_HANDLER值为django.core.wsgi.get_wsgi_application()、DJANGO_SETTINGS_MODULE值为你的项目名称.settings
- 进入对应站点的应用程序池设置,将.NET Framework版本设置为「无托管代码」,托管管道模式选择集成
- 给Python安装目录、Django项目根目录添加
IIS_IUSRS用户的读取和执行权限 - 先在本地命令行进入项目目录执行
python manage.py runserver,确认项目本身无代码报错可以正常启动,排除项目自身问题 - 确认Django的settings.py中
ALLOWED_HOSTS已添加当前访问的IP或域名,DEBUG关闭后STATIC_ROOT配置正确
内容的提问来源于stack exchange,提问作者Chinmay Datar
相关产品推荐
相关产品推荐

