2

现在我在 pylons 的项目配置中有以下几行:

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

所以 paste 只服务于 HTTPS 请求而不是 HTTP。任何 HTTP 请求都会在 paste 调试控制台中导致以下异常:

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')]

是否也可以设置 paste 来服务 HTTP 请求?

4

2 回答 2

1

根据 Pylons FAQ,没有。

http://wiki.pylonshq.com/pages/viewpage.action?pageId=13434886

这是相当古老的条目,但我找不到任何允许在未来版本中配置它的更改。

于 2010-07-29T14:56:01.403 回答
0

一般来说,无论如何你都应该使用一些前端服务器,比如 nginx。让它同时处理 SSL/Non-SSL,然后通过 http/wsgi/fcgi 将请求传递给 paste。

于 2010-07-31T05:37:41.393 回答