我尝试在推送到网站的实时版本之前在本地测试我的实验,所以我的实验的目标是: localhost:8000 /(简单匹配) 然而,实验预览并未加载。如果我指向该网站的实时版本,它工作正常。
它是一个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",
答案 0 :(得分:0)
问题已经在较新版本的Django(https://code.djangoproject.com/ticket/23398)
中修复该错误与使用HTTPS和localhost有关。