1

我想深入研究 Python\Django 开发并使用我手头的东西:

  • 在 Hostgator 上托管(不是 vps,而是共享)。

他们确实支持 Django,但通过 fcgi。我做了这里的小指南中所说的所有内容

所以我得到了“你好世界”的工作。虽然我的应用程序的views.py中有时间而不是hello world:

from datetime import datetime
from django.http import HttpResponse
def index(request):
 return HttpResponse(datetime.now().strftime('%H:%M:%S'))

但是现在,当我对views.py 进行任何更改时 - 我无法立即看到结果。我确实删除了所有 *.pyc 文件,仍然没有。例如,即使这样做:

return HttpResponse('Hello World!')

我不明白这一点,但仍然看到时间。

我已经完全迷路了。我通过 ssh 和 django-admin.py 尝试了很多事情......但仍然 - 我看到了时间。

如果我在代码中犯了一个错误 - 它会快速(可能不是立即)赶上它并给出错误\调试信息,但即使在那之后我将它更正为新代码 = 结果仍然是时间。

好像我错过了什么。views.py 的一些“刷新”功能...清除缓存..或类似的东西?重启应用?

UPD:杀死 -USR1 index.fcgi 做到了!

4

1 回答 1

4

是fcgi!

您可能必须重新启动生成的服务器,因此它会重新加载 Python 文件。

您可以通过触摸 .fcgi 文件来实现:

$ touch index.fcgi

请参阅如何将 Django 与 FastCGI、SCGI 或 AJP 一起使用

Hostgator 的竞争对手 Dreamhost 说你有时需要终止进程

killall -USR1 index.fcgi

但我不知道这是否也适用于 hostgator。

于 2012-09-07T10:53:06.583 回答