【问题标题】:Django Apache Hello WorldDjango Apache Hello World
【发布时间】:2011-05-24 10:15:53
【问题描述】:

是否有一个 Hello World 教程,用于获取使用 Apache 的最小 Django 项目?

或者,谁能告诉我我在哪里误入歧途。我已经浏览了Django tutorials,一切似乎都按预期工作,但它们没有涵盖如何使用 apache 服务器实际部署示例。我找到了他们关于如何获得Django working with Apache 的文档,但我没有任何运气。我在 Ubuntu 上。我做了apt-get install libapache2-mod-wsgi,然后按照上面第二个链接上的说明进行操作。

我的 /etc/apache2/httpd.conf 是单行的(这正常吗?)

WSGIScriptAlias / /home/john/programming/djangotutorial1/mysite/apache/django.wsgi

我在 /home/john/programming/djangotutorial1/mysite/apache/django.wsgi 创建了一个新文件,如下所示:

import os
import sys

path = '/home/john/programming/djangotutorial1'
if path not in sys.path:
        sys.path.append(path)

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

还有 mysite 已经填充的 Django 教程网站。

当我访问 mywebsite.com 时,我收到 500 内部服务器错误。

想法?

【问题讨论】:

    标签: django apache deployment installation


    【解决方案1】:

    由于您收到 500 错误,这意味着您的网站至少正在加载。您应该做的是在您的 settings.py 中启用调试,然后重新启动 Apache。它不会给你一个 500 错误,而是告诉你真正的错误是什么。

    通常不建议启用调试,但由于它只是一个 Hello World,所以没问题。但在生产环境中,您可以查看 Apache 的错误日志来查找问题。

    【讨论】:

    • 嗯...听起来很有希望,但 settings.py 有 DEBUG = True
    • /var/log/apache/error.log 在 Ubuntu 上我相信。我不使用 Ubuntu,但它肯定在 /var/log/
    • 它有效!阅读错误日志立即指出了这一点,但后来又花了一点时间让事情恢复正常。基本上,我已经完成了一半的工作,使教程处于无效状态。
    • 仅供参考,如果您使用的是 wsgi,那么无论您的调试设置如何,许多初始错误(如语法错误)都不会显示在 Django 中,您必须在 apache 日志中查看。
    猜你喜欢
    • 1970-01-01
    • 2016-10-02
    • 2017-05-03
    • 1970-01-01
    • 2013-06-27
    • 2012-04-08
    • 1970-01-01
    • 2012-01-04
    • 2014-10-15
    相关资源
    最近更新 更多