Ошибка чтения Django + IIS + Wfastcgi
Я настраивал все пути в моем файле web.config и настраивал все в IIS (на Windows Server 2012 R2). Когда я закончил, я запустил сервер и зашел на сайт. Но при этом я получил следующее сообщение об ошибке:
Error occurred while reading WSGI handler:
Traceback (most recent call last):
File "C:\inetpub\wwwroot\djangoapp\wfastcgi.py", line 711, in main
env, handler = read_wsgi_handler(response.physical_path)
File "C:\inetpub\wwwroot\djangoapp\wfastcgi.py", line 568, in read_wsgi_handler
return env, get_wsgi_handler(handler_name)
File "C:\inetpub\wwwroot\djangoapp\wfastcgi.py", line 551, in get_wsgi_handler
raise ValueError('"%s" could not be imported' % handler_name)
ValueError: "django.core.wsgi.get_wsgi_application()" could not be imported
StdOut:
StdErr:
Web.config (файл):
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="Python FastCGI"
path="*"
verb="*"
modules="FastCgiModule"
scriptProcessor="C:\Python34\python.exe|C:\inetpub\wwwroot\djangoapp\wfastcgi.py"
resourceType="Unspecified"
requireAccess="Script" />
</handlers>
</system.webServer>
<appSettings>
<add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" />
<add key="PYTHONPATH" value="C:\Python34\python.exe" />
<add key="WSGI_RESTART_FILE_REGEX" value=".*((\.py)|(\.config))$" />
<add key="DJANGO_SETTINGS_MODULE" value="djangoapp.settings" />
</appSettings>
</configuration>
Я не понимаю, почему эта ошибка возникает. У кого-нибудь есть подсказка, как решить это или помочь.
Спасибо за прочтение.
2 ответа
Я часто вижу эту проблему в Интернете. Проблема в том, что у вас есть 2 версии Python на вашем компьютере. Убедитесь, что у вас все установлено для обеих версий. Например Python версии 3.4: py -m pip install django
и для Python версии 3.6: просто pip install django
в зависимости от того, как переменные вашей среды установлены, конечно. Пожалуйста, убедитесь, что все загружено нормально. Также обратите внимание, что для обеих версий вы должны также ввести эти команды для работы: Для версии 3.6 (в моем случае):
pip install --upgrade wheel
pip install wfastcgi
wfastcgi-enable
И для версии 3.4 (в моем случае):
py -m pip install --upgrade wheel
py -m pip install wfastcgi
wfastcgi-enable
Обратите внимание, что обе версии имеют свои собственные wfastcgi.
Надеюсь, это поможет, это решило мою проблему.
Вот разница между нами. Надеюсь это поможет.
<add key="WSGI_HANDLER" value="django.core.handlers.wsgi.WSGIHandler()" />
<add key="PYTHONPATH" value="[PATH_OF_DJANGOAPP]" />