2015-07-11 46 views
2

我跑我的服务器Django和设置调试真正的缩略图明白为什么缩略图不会在模板和在呼叫本地主机我已经收到这个异常异常证书错误缩略图上运行Django当地

CertificateError显示IMG在/ 主机名 'myhost.s3.amazonaws.com' 不匹配任何的 '* .s3.amazonaws.com', 's3.amazonaws.com' 进入这里

Environment: 
Request Method: GET 
Request URL: http://localhost:8000/ 

Django Version: 1.6.5 
Python Version: 2.7.9 
Installed Applications: 
('django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'suit', 
'tinymce', 
'daterange_filter', 
'django.contrib.admin', 
'import_export', 
'south', 
'djcelery', 
'sorl.thumbnail', 
'base', 
'accounts', 
'app', 
'faq', 
'marketing', 
'website') 
Installed Middleware: 
    ('django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.locale.LocaleMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware') 


Template error: 
In template Desarrollo/project/templates/includes/class.html, error at line 82 
    hostname 'myhost.s3.amazonaws.com' doesn't match either of '*.s3.amazonaws.com', 's3.amazonaws.com' 
72 :    {% else %} 


73 :     {% if item.old_price %} 


74 :      <div class="triangle old"></div> 


75 :      <div class="text-triangle old"> 


76 :       <small>Ahora</small> 


77 :       <br><span 


78 :        class="price">{{ item.price|exchangeRateSymbol:request }}{{ item.price|exchangeRateValue:request }}</span> 


79 :      </div> 


80 :     {% endif %} 


81 :    {% endif %} 


82 :    {% thumbnail item.preview "600x360" crop="center" as im %} 


83 :     <img data-src="{{ im.url }}" src="" alt="{{ item.name }}" class="img-responsive lazy"/> 


84 :    {% endthumbnail %} 


85 :    <div class="mask"> 


86 :     <a href="{% url 'classes-details' item.slug %}"><p><span 


87 :       class="glyphicon glyphicon-play-circle see-more"></span></p></a> 


88 :     <a href="{% url 'classes-details' item.slug %}" class="info">Ver más</a> 


89 :    </div> 


90 :   </div> 


91 :  {% endif %} 


92 :  <div class="detail_"> 


Traceback: 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response 
112.      response = wrapped_callback(request, *callback_args, **callback_kwargs) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/views/generic/base.py" in view 
69.    return self.dispatch(request, *args, **kwargs) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/views/generic/base.py" in dispatch 
87.   return handler(request, *args, **kwargs) 
File "/Desarrollo/project/website/views.py" in get 
124.    context_instance = RequestContext(request) 
File "Desarrollo/env/local/lib/python2.7/site-packages/django/shortcuts/__init__.py" in render_to_response 
29.  return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/loader.py" in render_to_string 
169.   return t.render(context_instance) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
140.    return self._render(context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/base.py" in _render 
134.   return self.nodelist.render(context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 
123.   return compiled_parent._render(context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/base.py" in _render 
134.   return self.nodelist.render(context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/Desarrollo/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 
62.    result = block.nodelist.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 
305.     return nodelist.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 
196.       nodelist.append(node.render(context)) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 
155.   return self.render_template(self.template, context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render_template 
137.   output = template.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
140.    return self._render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in _render 
134.   return self.nodelist.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 
305.     return nodelist.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/base.py" in render 
840.     bit = self.render_node(node, context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 
78.    return node.render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/sorl/thumbnail/templatetags/thumbnail.py" in render 
59.    return self._render(context) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/sorl/thumbnail/templatetags/thumbnail.py" in _render 
137.   thumbnail = get_thumbnail(file_, geometry, **options) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/sorl/thumbnail/shortcuts.py" in get_thumbnail 
8.  return default.backend.get_thumbnail(file_, geometry_string, **options) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/sorl/thumbnail/base.py" in get_thumbnail 
101.   if not thumbnail.exists(): 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/sorl/thumbnail/images.py" in exists 
111.   return self.storage.exists(self.name) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/storages/backends/s3boto.py" in exists 
414.   return k.exists() 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/s3/key.py" in exists 
539.   return bool(self.bucket.lookup(self.name, headers=headers)) 
File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/s3/bucket.py" in lookup 
    142.   return self.get_key(key_name, headers=headers) 
    File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/s3/bucket.py" in get_key 
    192.   key, resp = self._get_key_internal(key_name, headers, query_args_l) 
    File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/s3/bucket.py" in _get_key_internal 
    199.             query_args=query_args) 
    File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/s3/connection.py" in make_request 
    664.    retry_handler=retry_handler 
    File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/connection.py" in make_request 
    1071.       retry_handler=retry_handler) 
    File "/home/kperez/Desarrollo/www.pleisi.com/env/local/lib/python2.7/site-packages/boto/connection.py" in _mexe 
    943.          request.body, request.headers) 
    File "/usr/lib/python2.7/httplib.py" in request 
    1048.   self._send_request(method, url, body, headers) 
    File "/usr/lib/python2.7/httplib.py" in _send_request 
    1088.   self.endheaders(body) 
    File "/usr/lib/python2.7/httplib.py" in endheaders 
    1044.   self._send_output(message_body) 
    File "/usr/lib/python2.7/httplib.py" in _send_output 
    888.   self.send(msg) 
    File "/usr/lib/python2.7/httplib.py" in send 
    850.     self.connect() 
    File "/usr/lib/python2.7/httplib.py" in connect 
    1269.             server_hostname=server_hostname) 
    File "/usr/lib/python2.7/ssl.py" in wrap_socket 
    352.       _context=self) 
    File "/usr/lib/python2.7/ssl.py" in __init__ 
    579.      self.do_handshake() 
    File "/usr/lib/python2.7/ssl.py" in do_handshake 
    816.    match_hostname(self.getpeercert(), self.server_hostname) 
    File "/usr/lib/python2.7/ssl.py" in match_hostname 
    271.    % (hostname, ', '.join(map(repr, dnsnames)))) 

    Exception Type: CertificateError at/
    Exception Value: hostname 'myhost.s3.amazonaws.com' doesn't match either of '*.s3.amazonaws.com', 's3.amazonaws.com' 

代码这是我的媒体网址配置settings.py和生产静态:

BASE_DIR = dirname(dirname(__file__)) 

MEDIA_ROOT = join(BASE_DIR, 'media').replace('\\','/') 
MEDIA_URL = 'http://myhost.s3.amazonaws.com/' 
STATIC_ROOT = '' 
STATIC_URL = 'http://myhost.s3.amazonaws.com/' 

STATICFILES_DIRS = (
    join(BASE_DIR, 'static').replace('\\','/'), 
) 

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
) 

媒体和静态变量local_settings.py

MEDIA_URL = '/media/' 
STATIC_URL = '/static/' 

CDN = '/static/' 
+0

我有同样的问题。你修好了吗? – MagicLAMP

回答

0

的Python了严格证书2.7.9版本检查(见PEP 476),导致水桶在其名称中的点失败负载。这是AWS网站上的一个错误(ref)。如果您从名称中删除点似乎可以解决问题,或者将python降级到2.7.8(我认为)。

虽然我发现在2.7以内降级python太困难了,所以我只是手动注释掉代码。

须藤的vim /usr/lib/python2.7/ssl.py线271

/usr/lib/python2.7/ssl.py in match_hostname 
       if key == 'commonName': 
        if _dnsname_match(value, hostname): 
         return 
        dnsnames.append(value) 
    if len(dnsnames) > 1: 
     raise CertificateError("hostname %r " 
      "doesn't match either of %s" 
         % (hostname, ', '.join(map(repr, dnsnames)))) ... 
    elif len(dnsnames) == 1: 
     raise CertificateError("hostname %r " 
      "doesn't match %r" 
      % (hostname, dnsnames[0])) 
    else: 
     raise CertificateError("no appropriate commonName or " 
相关问题