UnicodeDecodeError на Localhost с помощью Django и Optimizely
Я пытаюсь проверить свои эксперименты локально, прежде чем перейти на живую версию сайта, поэтому мой эксперимент нацелен на: localhost:8000/ (simple match) Предварительный просмотр эксперимента, однако, не загружается. Если я укажу на живую версию сайта, она работает нормально.
Это приложение django, просматривающее исходный код, когда я захожу в браузер localhost: 8000, и вижу, что фрагмент кода оптимизирован.
Это моя стековая трасса от Django
self.finish_request(request, client_address)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/Users/james/pubfront/riidr_venv/lib/python2.7/site-packages/django/core/servers/basehttp.py", line 126, in __init__
Exception happened during processing of request from ('127.0.0.1', 59660)
super(WSGIRequestHandler, self).__init__(*args, **kwargs)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 655, in __init__
self.handle()
Traceback (most recent call last):
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 599, in process_request_thread
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/simple_server.py", line 124, in handle
self.finish_request(request, client_address)
if not self.parse_request(): # An error code has been sent, just exit
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 286, in parse_request
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 334, in finish_request
self.send_error(400, "Bad request syntax (%r)" % requestline)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 368, in send_error
self.RequestHandlerClass(request, client_address, self)
File "/Users/james/pubfront/riidr_venv/lib/python2.7/site-packages/django/core/servers/basehttp.py", line 126, in __init__
self.send_response(code, message)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 385, in send_response
super(WSGIRequestHandler, self).__init__(*args, **kwargs)
self.log_request(code)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 655, in __init__
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 422, in log_request
self.handle()
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/simple_server.py", line 124, in handle
self.requestline, str(code), str(size))
File "/Users/james/pubfront/riidr_venv/lib/python2.7/site-packages/django/core/servers/basehttp.py", line 138, in log_message
msg = "[%s] %s\n" % (self.log_date_time_string(), format % args)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 5: ordinal not in range(128)
Я сомневаюсь, что это проблема с кодом, так как он отлично работает с живой версией, я думаю, что мне не хватает чего-то, чтобы оптимизировать указание на localhost.
Я думаю, что это, вероятно, какая-то проблема безопасности или проблема промежуточного программного обеспечения, но мне не повезло определить ее.
Промежуточное программное обеспечение на сайте:
89: "tools.middleware.ContentLengthWriter",
90: "stats.middleware.LastActivityMiddleware",
91: "django.middleware.common.CommonMiddleware",
92: "django.contrib.sessions.middleware.SessionMiddleware",
93: "django.middleware.csrf.CsrfViewMiddleware",
94: "django.contrib.auth.middleware.AuthenticationMiddleware",
95: "mobile.middleware.MobileMiddleware",
96: "tools.recently_viewed.RecentlyViewedMiddleware",
97: "django.contrib.messages.middleware.MessageMiddleware",
98: "pagination.middleware.PaginationMiddleware",
99: "django.middleware.transaction.TransactionMiddleware",
100: "tools.middleware.UserBasedExceptionMiddleware",
101: "tools.middleware.ExceptionMiddleware",
102: "django.contrib.redirects.middleware.RedirectFallbackMiddleware",
103: "tools.middleware.ReadOnlyMiddleware",
1 ответ
Проблема уже исправлена в более новой версии Django ( https://code.djangoproject.com/ticket/23398)
Ошибка была связана с использованием HTTPS с localhost.