Django 2.2 + Apache24 + Windows Server 2016,mod_wsgi无法运行wsgi.py文件

问题描述

我正在尝试使用Apache 24在Windows机器上部署django项目。

Apache有效。但是日志文件显示,在读取wsgi.py文件时,mod_Wsgi卡住了,没有抛出任何错误

这是我的日志文件(日志级别信息)中的最后一个条目:

[Thu Sep 03 14:13:33.708094 2020] [wsgi:info] [pid 17684:tid 908] [client ::1:53338] mod_wsgi (pid=17684,process='',application='l'): Loading Python script file 'C:/.../wsgi.py'.

网页一直加载到无限。

以下是我在httpd.conf文件中使用的内容

LoadFile "c:/python37/python37.dll"
LoadModule wsgi_module "c:/python37/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win_amd64.pyd"
WsgiPythonHome "c:/python37"
WsgiScriptAlias / "C:/...../wsgi.py"

<Directory "C:/...../">
    <Files wsgi.py>
        Require all granted
    </Files>
</Directory>

Alias /static "C:/.../static/"
<Directory "C:/..../static/">
    Require all granted
</Directory>

wsgi.py

import os
import sys

sys.path.insert(0,"C:/..../project_site/")
sys.path.insert(0,"C:/")

from django.core.wsgi import get_wsgi_application
from django.contrib.staticfiles.handlers import StaticFilesHandler

os.environ["DJANGO_SETTINGS_MODULE"] = "project.settings"

application = StaticFilesHandler(get_wsgi_application())

httpd-vhosts.conf文件中没有任何更改。

根据mod_wsgi的官方文档,我尝试了很多调整,但是网页无法加载。

我想念什么?

更新: 事实证明,mod_wsgi请求永远不会到达会发出http响应的Django WsgiHandler,因此永远不会结束加载。经过数小时的等待时间后,它只能工作一次,然后再也没有。我想根据官方文档对wsgi.py,httpd.conf中的设置进行数百次调整之后,我想,最好是使用Nginx切换到uwsgi,而不是进行此项工作。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)