在切换 EC2 服务器时,我们经常更改 AWS 上的 IP 地址(是的,我们在适用时使用弹性 IP)。有时我们会获得用于托管其他应用程序的 IP 地址(当然这很好)。当最终用户点击过时的链接时,他们会访问我们的服务器(这没关系)。但是这些 HTTP GET 请求有一个“referer”标头,因此常规的 404 错误会自动生成一封 Django 电子邮件给我们的开发人员!
我可以使用以下 Python 代码轻松地重新创建错误电子邮件:
import urllib2
req = urllib2.Request('http://my_website.com/some/url/we/dont/have')
req.add_header('Referer', 'http://whatever.i.want')
request = urllib2.urlopen(req)
当Referer 标头被注释掉时,Django 不会发送电子邮件。
我们仍然希望在我们的网站中有真正损坏的链接时发送电子邮件,所以我不想设置SEND_BROKEN_LINK_EMAILS
为 False。
我无法过滤使用IGNORABLE_404_URLS
,因为 a. 逻辑是相反的,b。正则表达式只扫描路径而不是主机名。
帮助?