【问题标题】:django admin url not found (404)找不到 django 管理 url (404)
【发布时间】:2012-08-30 20:32:00
【问题描述】:

我是 django 初学者。

我在 /var/log/apache2/error.log 中收到以下消息(apache 设置为调试级别)

[Thu Aug 30 16:15:11 2012] [info] mod_wsgi (pid=5616): Initializing Python. [Thu Aug 30 16:15:11 2012] [info] mod_wsgi (pid=5616): Attach interpreter ''. [Thu Aug 30 16:15:15 2012] [error] [client 172.24.113.130] File does not exist: /var/www/netvistra3 [Thu Aug 30 16:15:19 2012] [error] [client 172.24.113.130] File does not exist: /var/www/netvistra3

我的wsgi文件位于/usr/local/django/netvistra3/apache/netvistra3.wsgi

管理站点似乎只适用于 django 的嵌入式网络服务器。

来自 apache2 虚拟目录站点的片段:

    Alias /static/admin /usr/lib/python2.7/dist-packages/django/contrib/admin/static/admin
    WSGIDaemonProcess netvistra3 user=pbensel group=staff threads=5
    WSGIScriptAlias /netvistra3 /usr/local/django/netvistra/apache/netvistra3.wsgi
    <Directory /usr/local/django/netvistra3>
            WSGIScriptReloading On
            WSGIProcessGroup netvistra3
            WSGIApplicationGroup %{GLOBAL}
            Order allow,deny
            Allow from all
    </Directory> 

非常感谢任何帮助

【问题讨论】:

  • 您的网站在/netvistra3 上运行,但默认的管理员网址是/admin。如果你尝试/netvistra3/admin/ 会发生什么?

标签: django apache admin mod-wsgi


【解决方案1】:

Django 在它自己的服务器上运行时有一点魔力,这有助于解决这个问题。在 Apache 等上部署时,您负责设置 Apache 或您使用的任何媒体服务器来提供管理文件。 Django 文档在这个主题上非常好。请参阅Django docs的以下链接。

这是一个很常见的问题。所以,不要难过。如果您需要有关“部署 django 管理员”的更多具体帮助,请使用 Google

顺便说一句,我对我的项目使用“collectstatic”方法,并从 s3 存储桶为它们提供服务。它工作得很好,似乎是一种非常普遍的做法。至少在 Django 1.3 中。

【讨论】:

  • OP 没有提到静态文件。他们的问题似乎在于让管理站点完全正常工作。
  • @DanielRoseman - 我想你是对的。但是,我相信问题出在他们的静态文件上。关于它在 Django“嵌入式网络服务器”下工作的那一行是一个很好的提示。这与我在部署我的第一个 Django 站点进行生产时遇到的问题相同。这是我使用的解决方案。所以,随心所欲地投票给我。我只是想帮忙。
【解决方案2】:

正如大卫所说,您必须采取正确的步骤来设置静态文件。你有:

Alias /static/admin /usr/lib/python2.7/dist-packages/django/contrib/admin/static/admin

但缺少对应的:

<Directory /usr/lib/python2.7/dist-packages/django/contrib/admin/static>
Order allow, deny
Allow from all
</Directory>

没有那个,你会发现静态文件失败并出现禁止错误。

我也会检查您是否已正确设置设置以说明静态媒体在哪个 URL 下可用。

如果静态文件没有正确提供,您将丢失管理页面的所有样式,这可能被视为无法正常工作。

还请按照建议查看 collectstatic,因为像您正在做的那样从 Python 安装中引用静态媒体并不总是一个好主意。

【讨论】:

    猜你喜欢
    • 2017-01-18
    • 1970-01-01
    • 2020-04-14
    • 2018-08-18
    • 2020-06-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-22
    • 1970-01-01
    相关资源
    最近更新 更多