我在没有任何代理的情况下运行 django 服务器:
python manage.py runserver 0.0.0.0:80
我在 linux 服务器上设置了本地时区,这是正确的:
root@83b3bf90b5c5:/app# date
Fri Apr 7 12:38:42 MSK 2017
我还在 django 项目的 settings.py 上设置了本地时区:
TIME_ZONE = 'Europe/Moscow'
并检查它:
>>> from django.utils.timezone import localtime, now
>>> localtime(now())
datetime.datetime(2017, 4, 7, 12, 38, 42, 196476,
tzinfo=<DstTzInfo 'Europe/Moscow' MSK+3:00:00 STD>)
但是当我从客户端(Google Chrome 浏览器)打开任何网页时 - 在 http 响应标头中时区不是本地的:
Date:Fri, 07 Apr 2017 09:38:42 GMT
如何在全球范围内更改所有项目的 http 标头中的时区?
如何在全球范围内更改所有项目的 http 标头中的时区?
HTTP 日期标头被定义为 UTC(由于历史原因由字符表示GMT
),因此无论是 Django 还是任何其他服务器或框架都不允许您将它们本地化到您的时区。你有理由这样做吗?
Django 确实有切换到本地时区的方法(请参阅activate()),但这仅适用于特定于应用程序的内容,而不适用于 HTTP 标头。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句