EC2 サーバーを切り替えるときに、AWS の IP アドレスを変更することがよくあります (はい、該当する場合は Elastic IP を使用します)。他のアプリケーションをホストしていた IP アドレスを取得する場合があります (もちろん問題ありません)。エンド ユーザーが古いリンクをクリックすると、サーバーにアクセスします (これは問題ありません)。しかし、これらの HTTP GET リクエストには「リファラー」ヘッダーが含まれているため、通常の 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 はメールを送信しません。私たちのウェブサイトに実際に壊れたリンクがある場合でも、メールを送信したいので、False
に設定したくありません。
を使用してフィルタリングできません。論理が逆になり、b.正規表現はパスのみをスキャンし、ホスト名はスキャンしません。SEND_BROKEN_LINK_EMAILS
IGNORABLE_404_URLS
ヘルプ?