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

mkshixfv  于 2023-08-08  发布在  Go
关注(0)|答案(2)|浏览(117)

我正在看一些代码,它使用Meta ['SERVER_NAME']并检查前9个字符是否匹配'localhost'。在osx中,SERVER_NAME的值是'1.0.0.127.in-addr.arpa',但是如果我请求.get_host(),我会得到localhost:10002(这是我在浏览器中访问它的方式)。在linux和windows中运行相同代码的其他开发人员从Meta获取localhost作为值。
我看到另外两个人问了相关的问题(在答案的评论部分)Accessing request.META.SERVER_NAME in templatehttps://plus.google.com/+SamVilain/posts/8TortHZ7J5V。但我还没找到让它按我想要的方式运行的方法。所以我的问题是有没有一个简单的方法让django用localhost填充Meta[SERVER_NAME]?这是一个相当大的系统,检查是在很多地方,所以改变变量的调用是我真的想避免的事情。

pexxcrt2

pexxcrt21#

在试图修复另一个问题时,我遇到了终端显示随机主机名作为终端提示符的问题,我偶然发现了scutil。当我运行以下命令时,它也修复了我使用django的问题:

sudo scutil --set HostName localhost

字符串

vybvopom

vybvopom2#

我做了相反的事
sudo scutil --set HostName 1.0.0.127
然后进入主机配置文件
sudo nano /etc/hosts
并添加
1.0.0.127127.0.0.1
欺骗系统返回127.0.0.1

相关问题