get_host vs META ['SERVER_NAME']和1.0.0.127.in-addr.arpa

时间:2015-11-04 09:25:09

标签: python django macos

我正在查看一些代码,它正在使用request.META ['SERVER_NAME']并检查前9个字符是否与'localhost'匹配。在osx中​​,SERVER_NAME的值是'1.0.0.127.in-addr.arpa',但如果我执行request.get_host(),我会得到localhost:10002(这是我在浏览器中访问它的方式)。在linux和windows中运行相同代码的其他开发人员将localhost作为META的值。

我见过另外两个人提出相关问题(在答案的评论部分)Accessing request.META.SERVER_NAME in templatehttps://plus.google.com/+SamVilain/posts/8TortHZ7J5V。但我还没有办法让它按照我想要的方式行事。所以我的问题是:有没有一种简单的方法可以让django使用localhost填充META [SERVER_NAME]?这是一个相当大的系统,并且在很多地方进行检查,因此更改呼叫的变量是我真正想要避免的。

1 个答案:

答案 0 :(得分:0)

在尝试解决另一个问题时,我终端显示随机主机名作为终端提示,我偶然发现了scutil。当我运行以下命令时,它还修复了我的问题:django:

sudo scutil --set HostName localhost