【发布时间】:2012-05-25 16:33:02
【问题描述】:
我有一个在 CentOS 上运行的 Django/uwsgi/nginx 堆栈。将大文件上传到 django (1GB+) 时,我希望它会在 /tmp 中创建一个临时文件,并且我应该能够看到它随着上传的进行而增长。但是,我没有。 ls -lah /tmp 不显示任何正在创建或更改大小的新文件。我什至在我的settings.py 中明确指定了FILE_UPLOAD_TEMP_DIR = '/tmp',但仍然没有。
如果能帮助我追踪临时文件的存储位置,我将不胜感激。我需要这个来确定是否有任何大型上传正在进行中。
【问题讨论】:
-
这取决于网络服务器。该请求具有文件的内容。您可以发出 request.read() 来获取内容。 Django 自动有一些解析器来使该文件再次“可用”。
-
正如我提到的,Web 服务器是 nginx。 Django 对上传的文件有特殊处理。请参阅下面 stevedbrown 答案中的链接。我的问题是临时文件在哪里。
标签: django django-uploads