2010-07-29 19 views
2

Pour l'instant j'ai les lignes suivantes dans une configuration de projet sur Pylons:Comment est-ce que le service paster sert les requêtes HTTP et HTTPS en même temps?

[server:main] 
... 
ssl_pem = /path-to-pem/file-name.pem 

si Paster sert uniquement les requêtes HTTPS, mais pas HTTP. Toute requête HTTP provoque l'exception suivante dans la console de débogage Paster:

Traceback (most recent call last): 
    File "/home/eigenein/Projects/Python/Pylons/lib/python2.6/site-packages/Paste-1.7.4-py2.6.egg/paste/httpserver.py", line 1068, in process_request_in_thread 
    self.finish_request(request, client_address) 
    File "/usr/lib/python2.6/SocketServer.py", line 320, in finish_request 
    self.RequestHandlerClass(request, client_address, self) 
    File "/usr/lib/python2.6/SocketServer.py", line 615, in __init__ 
    self.handle() 
    File "/home/eigenein/Projects/Python/Pylons/lib/python2.6/site-packages/Paste-1.7.4-py2.6.egg/paste/httpserver.py", line 442, in handle 
    BaseHTTPRequestHandler.handle(self) 
    File "/usr/lib/python2.6/BaseHTTPServer.py", line 329, in handle 
    self.handle_one_request() 
    File "/home/eigenein/Projects/Python/Pylons/lib/python2.6/site-packages/Paste-1.7.4-py2.6.egg/paste/httpserver.py", line 431, in handle_one_request 
    self.raw_requestline = self.rfile.readline() 
    File "/usr/lib/python2.6/socket.py", line 406, in readline 
    data = self._sock.recv(self._rbufsize) 
Error: [('SSL routines', 'SSL23_GET_CLIENT_HELLO', 'http request')] 

Est-il possible de mettre en place Paster pour servir les requêtes HTTP aussi?

Répondre

0

Généralement, vous devez utiliser un serveur frontal de toute façon, comme nginx. Laissez-le gérer à la fois SSL/Non-SSL, puis passez les requêtes à paster sur http/wsgi/fcgi.