【问题标题】:nginx + django + haystack = Server Error (500)nginx + django + haystack = 服务器错误 (500)
【发布时间】:2022-01-20 15:53:29
【问题描述】:

我在 Django 中拼凑了一个小型博客应用程序,使用 Haystack 和 Whoosh 后端进行搜索。它在开发服务器(笔记本电脑上)中运行良好,但是当站点在服务器(rpi)上的 nginx 中运行时搜索失败。 我可以访问搜索页面,但服务器错误(500)中的任何搜索结果,nginx 或 django 日志中都没有可用的其他信息。我打开了 RealtimeSignalProcessor 但将其关闭 - 没有变化。任何关于如何尝试调试它的指针都会很棒。

【问题讨论】:

  • 你能把“DEBUG=True”放在你的服务器上看看错误信息吗?
  • 当 Django 收到请求时,它应该打印出这些消息。确保在 Django 设置文件中设置了 DEBUG=True。如果 Django 没有收到请求,我将从更高层开始,例如 Nginx、端口开放和网络堆栈(IP 地址)。
  • 如果在 ubuntu 上运行:tail -f /var/log/apache2/error.log,假设您在生产服务器上运行,它将给出您的错误日志。然后像这里显示的那样做:serverfault.com/a/410207/917402。这就是我解决自己类似问题的方法。它也可能对你有用

标签: python django nginx django-haystack whoosh


【解决方案1】:

感谢您指出显而易见的问题。使用 DEBUG=True 我得到:“当前用户/组的 Whoosh 索引 '/path/to/my/mysite/whoosh_index' 的路径不可写。”然后通过更改文件夹的文件权限或所有权以允许用户(在我的情况下为 nginx)写入访问权限,可以轻松解决此问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-11
    • 2015-07-16
    • 1970-01-01
    • 2021-11-03
    相关资源
    最近更新 更多