Tôi đã tạo một ứng dụng web Django (1.7) với Nginx, Gunicorn, Django stack và gần đây tôi đã bắt đầu nhận được một số lỗi:Django ERROR (EXTERNAL IP): Tiêu đề HTTP_HOST không hợp lệ: '* .domain.com'
[Django] L ERI (IP NGOẠI HỐI): Tiêu đề HTTP_HOST không hợp lệ: '* .domain.com'. Tên miền được cung cấp không hợp lệ theo RFC 1034/1035.
Sau khi tìm kiếm xung quanh, tôi đã tìm thấy một số phản ứng rằng đề nghị đưa các ký tự đại diện như các host cho phép, ví dụ:
ALLOWED_HOSTS = ['*']
Tuy nhiên tôi vẫn nhận được lỗi này.
Dưới đây là thông báo lỗi đầy đủ:
Request repr():
<WSGIRequest
path:/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{},
META:{'HTTP_ACCEPT_ENCODING': 'none',
'HTTP_CONNECTION': 'close',
'HTTP_HOST': '*.domain.com',
'HTTP_USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)',
'HTTP_X_FORWARDED_FOR': '11.111.111.11',
'HTTP_X_FORWARDED_HOST': 'subdomain.domain.com',
'HTTP_X_REAL_IP': '11.111.111.11',
'PATH_INFO': u'/',
'QUERY_STRING': '',
'RAW_URI': '/',
'REMOTE_ADDR': '127.0.0.1',
'REMOTE_PORT': '51349',
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': u'',
'SERVER_NAME': '127.0.0.1',
'SERVER_PORT': '9000',
'SERVER_PROTOCOL': 'HTTP/1.0',
'SERVER_SOFTWARE': 'gunicorn/19.1.1',
'gunicorn.socket': <socket._socketobject object at 0x3877fa0>,
'wsgi.errors': <gunicorn.http.wsgi.WSGIErrorsWraper object at 0x37e6050>,
'wsgi.file_wrapper': <class 'gunicorn.http.wsgi.FileWrapper'>,
'wsgi.input': <gunicorn.http.body.Body object at 0x396cc50>,
'wsgi.multiprocess': False,
'wsgi.multithread': False,
'wsgi.run_once': False,
'wsgi.url_scheme': 'http',
'wsgi.version': (1, 0)}>
là một cái gì đó này tôi phải lo ngại về? Am i thiếu cái gì ở đây? Tôi nghĩ bằng cách đặt ký tự đại diện trong các máy chủ được phép, tôi sẽ loại bỏ vấn đề này, nhưng điều đó dường như không đúng.
Mọi trợ giúp sẽ được đánh giá cao.
tôi sẽ không ký tự đại diện chủ nhà cho phép, thay vì sử dụng một danh sách các host thực sự cho phép như [www.domain.com, domain.com]. Ngoài ra cấu hình Nginx của bạn để chấp nhận các yêu cầu này thông qua server_name. – Jingo
@Jingo cảm ơn sự giúp đỡ của bạn và phản hồi nhanh chóng. Tôi đã có các tên miền được thêm trước đó nhưng gặp lỗi này, đó là lý do tại sao tôi thêm ký tự đại diện vào vị trí của nó. Lạ thật. Tôi sẽ đưa nó trở lại như bạn đã đề cập và xem tôi có gặp phải những vấn đề này hay không. – tdsymonds
Tôi hiện đã xóa ký tự đại diện cho phép và vẫn nhận được lỗi này ?! – tdsymonds