title: Django's SuspiciousOperation Invalid HTTP_HOST header
body: <p>After upgrading to Django 1.5, I started getting errors like this:</p>
  
  <pre><code>Traceback (most recent call last):
  
  File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 92, in get_response
  response = middleware_method(request)
  
  File "/usr/local/lib/python2.7/dist-packages/django/middleware/common.py", line 57, in process_request
  host = request.get_host()
  
  File "/usr/local/lib/python2.7/dist-packages/django/http/request.py", line 72, in get_host
  "Invalid HTTP_HOST header (you may need to set ALLOWED_HOSTS): %s" % host)
  
  SuspiciousOperation: Invalid HTTP_HOST header (you may need to set ALLOWED_HOSTS): www.google.com
  
  &lt;WSGIRequest
  path:/,
  GET:&lt;QueryDict: {}&gt;,
  POST:&lt;QueryDict: {}&gt;,
  COOKIES:{},
  META:{'CONTENT_LENGTH': '',
  'CONTENT_TYPE': '',
  'DOCUMENT_ROOT': '/etc/nginx/html',
  'HTTP_ACCEPT': 'text/html',
  'HTTP_HOST': 'www.google.com',
  'HTTP_PROXY_CONNECTION': 'close',
  'HTTP_USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)',
  'PATH_INFO': u'/',
  'QUERY_STRING': '',
  'REMOTE_ADDR': '210.245.91.104',
  'REMOTE_PORT': '49347',
  'REQUEST_METHOD': 'GET',
  'REQUEST_URI': '/',
  u'SCRIPT_NAME': u'',
  'SERVER_NAME': 'www.derekkwok.net',
  'SERVER_PORT': '80',
  'SERVER_PROTOCOL': 'HTTP/1.0',
  'uwsgi.node': 'derekkwok',
  'uwsgi.version': '1.4.4',
  'wsgi.errors': &lt;open file 'wsgi_errors', mode 'w' at 0xb6d99c28&gt;,
  'wsgi.file_wrapper': &lt;built-in function uwsgi_sendfile&gt;,
  'wsgi.input': &lt;uwsgi._Input object at 0x953e698&gt;,
  'wsgi.multiprocess': True,
  'wsgi.multithread': False,
  'wsgi.run_once': False,
  'wsgi.url_scheme': 'http',
  'wsgi.version': (1, 0)}&gt;
  </code></pre>
  
  <p>I've set <code>ALLOWED_HOSTS = ['.derekkwok.net']</code>  in my settings.py file.</p>
  
  <p>What is going on here? It someone pretending to be Google and accessing my site? Or is it a benign case of someone setting their HTTP_HOST header incorrectly?</p>