我的settings.py文件包含:
DEBUG = False
ALLOWED_HOSTS = [u'mydomainxxx.com']
但是,我能够发出这样的卷曲请求:curl -X GET https://mydomainxxx.com/api/ -H’授权:令牌一些令牌’并且我得到了响应.
我希望使用ALLOWED_HOSTS会阻止像curl这样的命令从我的API获得响应.
这是正常行为吗?
最佳答案 您将
ALLOWED_HOSTS
设置与其他内容混淆.它表示服务器将侦听的主机名;不是连接主机的主机名.没有内置的方法来阻止它,但您可以轻松编写中间件来检查连接主机名.
您当前的设置将阻止此响应:
curl -X GET http://another_domainxxx.com/api/ -H 'Authorization: Token some token'
即使mydomainxxx.com和another_domainxxx.com都将解析为相同的IP地址.