- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Apache 为 Django 应用程序提供服务。
在 Django 的 settings.py 中,我有 DEBUG = False
,因此我不得不允许一些主机,例如:ALLOWED_HOSTS = ['.dyndns.org', 'localhost']
.这工作正常,但是我希望服务器也可以通过其内部 IP 地址在本地网络上访问,例如:192.168.0.x
, 或 127.0.0.1
等我怎么定义 192.*
或 127.*
在 ALLOWED_HOSTS
,如果我想避免完全打开访问 ALLOWED_HOSTS = ['*']
?
最佳答案
遵循@rnevius 的建议,并基于 how to setup custom middleware in django 中@AlvaroAV 的指南,我已经设法用这个中间件解决了:
from django.http import HttpResponseForbidden
class FilterHostMiddleware(object):
def process_request(self, request):
allowed_hosts = ['127.0.0.1', 'localhost'] # specify complete host names here
host = request.META.get('HTTP_HOST')
if host[len(host)-10:] == 'dyndns.org': # if the host ends with dyndns.org then add to the allowed hosts
allowed_hosts.append(host)
elif host[:7] == '192.168': # if the host starts with 192.168 then add to the allowed hosts
allowed_hosts.append(host)
if host not in allowed_hosts:
raise HttpResponseForbidden
return None
ALLOWED_HOSTS = ['*']
在
settings.py
不再以不受控制的方式对所有主机开放。
关于Django ALLOWED_HOSTS 通过 Apache 接受本地 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36220260/
我在Elastic Beanstalk上部署了django应用程序。我的应用程序的HealthCheck一直失败,因为ALLOWED_HOSTS设置变量中未包含ELB HealthCheck的IP。
我有一个地址,例如 example.com,并将其添加到 allowed_hosts 列表中。但是当我访问该网站时,我得到了 ALLOWED_HOSTS ['127.0.0.1', '::1', '1
该示例来自 Python Django 框架,但适用于所有 Web 应用程序。 ALLOWED_HOSTS setting如何保护您的网站和用户,即如果ALLOWED_HOSTS设置为"*",恶意用户
就是不明白,在django文档等文章中,出于安全考虑,allowed_hosts不建议为[‘*’]。但是一个网站应该对整个互联网开放,它应该有什么值(value)? 最佳答案 But a websit
有没有办法在 django 中设置 ALLOWED_HOSTS IP 范围? 类似这样的事情: ALLOWED_HOSTS = ['172.17.*.*'] 最佳答案 不,这目前不可能。根据the d
我的 settings.py 文件包含: DEBUG = False ALLOWED_HOSTS = [u'mydomainxxx.com'] 但是,我能够发出这样的 curl 请求:curl -X
我正在尝试使用 ./manage.py runserver 运行一个 django 服务器 但是出现这个错误: Invalid HTTP_HOST header: '127.0.0.1:8000'.
我试图在生产服务器上启动 Django 1.11 项目。当我启动应用程序时,我看到以下错误: Invalid HTTP_HOST header: 'bla-bla-bla.bla-bla-vla.co
这个问题在这里已经有了答案: Django ALLOWED_HOSTS for Amazon ELB (2 个答案) 关闭 7 个月前。 我们最近更改了部署策略以使用 AWS Auto Scalin
我正在使用Django 1.8。在本地设置和部署设置中,我都按如下所示设置了ALLOWED_HOSTS: ALLOWED_HOSTS = ['localhost', 'my.deployed.url'
我正在使用 Django,并且我有 ALLOWED_HOSTS 设置来包含我的 EC2 的私有(private) IP,如下所示: import requests EC2_PRIVATE_IP = N
据我了解,ALLOWED_HOSTS 会在 DEBUG=False 时进行检查,以防止攻击者将他们自己的域指向您的站点。 它看起来像 Heroku 的 Custom Domains做同样的事情。 因此
我正在使用 Apache 为 Django 应用程序提供服务。 在 Django 的 settings.py 中,我有 DEBUG = False ,因此我不得不允许一些主机,例如:ALLOWED_H
所以我的网站在 DEBUG = True 下显示正常,但是当我将其更改为 False 时出现 200 服务器错误。我一直在阅读,发现 500 错误很常见,但我找不到关于 200 错误的任何信息。我的
我正在关注来自 O'Reilly 的 Julia Elman 和 Mark Lavin 的轻量级 Django。在第 1 章中,我无法将 ALLOWED_HOSTS 设置为环境变量。 当我运行 pyt
在我的 Django 项目的用于部署的 settings.py 中,我希望 mywebsite.com 成为允许的主机,但这样放置会引发 500 错误。 对于生产服务器,当我使用时: ALLOWED_
Django 的 ALLOWED_HOSTS设置,如果设置为与浏览器连接到的主机不同,只会导致 400,不会指示问题。 DEBUG = False ALLOWED_HOSTS = ['example.
这两个 django 设置有什么区别: ALLOWED_HOSTS CORS_ORIGIN_REGEX_WHITELIST 最佳答案 ALLOWED_HOSTS A list of strings r
我总是设置我的 ALLOWED_HOSTS来自 Django 中的环境变量。在我的发展中 .env我总是设置ALLOWED_HOSTS=.localhost,.127.0.0.1并在生产 ALLOWE
我使用unix套接字而不是gunicorn的TCP端口来为我的Django应用程序提供服务。但是,当调试关闭时,我会收到 400 响应,除非我设置 ALLOWED_HOSTS = ['*'] 。在这种
我是一名优秀的程序员,十分优秀!