“ImportError: No module named _ssl” avec dev_appserver.py à partir de Google App Engine


Fond

"Dans le runtime de Python, nous avons ajouté le support pour le Python SSL
De la bibliothèque, de sorte que vous pouvez maintenant ouvrir des connexions sécurisées à des services distants
comme Apple Push Notification service."

Cette citation est prises à partir d'un post récent sur le Google App Engine blog.


Mise en œuvre

Si vous souhaitez utiliser natif python ssl, vous devez l'activer en utilisant les bibliothèques de configuration de votre application.fichier yaml, où vous indiquez le nom de la bibliothèque "ssl" . . .

Ces instructions sont fournies pour les développeurs par le biais de la Google App Engine documentation.

Les lignes suivantes ont été ajoutées à la app.yaml fichier:

libraries:
- name: ssl
  version: latest

Ce qui est en ligne avec les conseils fournis par le biais de Google App Engine documentation.


Problème

J'ai essayé de lancer mon projet en trois configurations différentes. Les deux sont de travail, et l'un ne l'est pas.

De travail ...

Après je télécharger mon application Google App Engine, et d'exécuter mon projet par le serveur, tout fonctionne bien.

De travail ...

Quand je lance mon projet avec manage.py runserver et comprennent le Google App Engine SKD dans mon PYTHONPATH, tout fonctionne bien.

Ne Fonctionne Pas ...

Cependant, lorsque je lance mon projet avec dev_appserver.py, j'obtiens l'erreur suivante:

ImportError at /
No module named _ssl
Request Method: GET
Request URL:    http://localhost:8080/
Django Version: 1.4.3
Exception Type: ImportError
Exception Value:    
No module named _ssl
Exception Location: /usr/local/lib/google_appengine_1.7.7/google/appengine/tools/devappserver2/python/sandbox.py in load_module, line 856
Python Executable:  /home/rbose85/Code/venvs/appserver/bin/python
Python Version: 2.7.3
Python Path:    
['/home/rbose85/Code/product/site',
 '/usr/local/lib/google_appengine_1.7.7',
 '/usr/local/lib/google_appengine_1.7.7/lib/protorpc',
 '/usr/local/lib/google_appengine_1.7.7',
 '/usr/local/lib/google_appengine_1.7.7',
 '/usr/local/lib/google_appengine_1.7.7/lib/protorpc',
 '/usr/local/lib/google_appengine_1.7.7',
 '/usr/local/lib/google_appengine_1.7.7/lib/protorpc',
 '/home/rbose85/Code/venvs/appserver/lib/python2.7',
 '/home/rbose85/Code/venvs/appserver/lib/python2.7/lib-dynload',
 '/usr/lib/python2.7',
 '/usr/local/lib/google_appengine',
 u'/usr/local/lib/google_appengine_1.7.7/lib/django-1.4',
 u'/usr/local/lib/google_appengine_1.7.7/lib/ssl-2.7',
 u'/usr/local/lib/google_appengine_1.7.7/lib/webapp2-2.3',
 u'/usr/local/lib/google_appengine_1.7.7/lib/webob-1.1.1',
 u'/usr/local/lib/google_appengine_1.7.7/lib/yaml-3.10']
Server time:    Wed, 24 Apr 2013 11:23:49 +0000
InformationsquelleAutor rbose85 | 2013-04-24