在 apache mod_wsgi 下部署 django 等待本地主机

deploy django under apache mod_wsgi waiting for localhost

我正在 Apache 上部署一个 Django 项目。配置后,我在浏览器中打开 "localhost",但什么也没有显示,状态栏一直显示 "Waiting for localhost"。这是一些信息。

环境:

OS: ubuntu 
Python: 2.7.3
Django: 1.8.2
Apache: 2.2.21
Django project: /var/www/ocr_service

Apache 虚拟主机:

WSGIScriptAlias / /var/www/ocr_service/ocr_service/wsgi.py
WSGIPythonPath /var/www/ocr_service
<VirtualHost *:80>
LogLevel info

ErrorLog /var/www/ocr_service/log/error.log
CustomLog /var/www/ocr_service/log/access.log combined

<Directory /var/www/ocr_service >
    <Files wsgi.py>
    Order deny,allow
    Allow from all
    </Files>
</Directory>
</VirtualHost>

Django.wsgi 文件:

import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ocr_service.settings")

application = get_wsgi_application()

我尝试了一个空的 Django 项目,它成功了。 这些是我做的,谁能帮我看看哪里不对?

apache2/error 日志仅报告恢复正常操作消息 自定义日志报告

  mod_wsgi (pid=10***, process='',application='127.0.1.1|') loading wsgi script '/var/www/ocr_service/ocr_service/wsgi.py"

尝试添加到 Apache 配置文件:

WSGIApplicationGroup %{GLOBAL}

参见:

由于日志片段显示至少正在加载 WSGI 文件,这只有在收到请求时才会发生,问题可能是您使用的 Python 的第三方扩展模块无法在正确地进行子口译,他们陷入僵局并挂起请求。设置该指令可避免此问题。

同时建议大家不要像现在一样使用内嵌模式,而是使用daemon模式: