Python 使用CherryPy的HTTPS到HTTP

Python 使用CherryPy的HTTPS到HTTP,python,http,https,wsgi,cherrypy,Python,Http,Https,Wsgi,Cherrypy,CherryPy是否可以将HTTP重定向到HTTPS。例如,假设下面的代码是,如果有人通过我希望将他们重定向到普通的HTTP URL(可能是301重定向?)进行访问,我如何实现这一点 #!/usr/bin/env python from pprint import pformat from cherrypy import wsgiserver def app(environ, start_response): status = '200 OK' response_header

CherryPy是否可以将HTTP重定向到HTTPS。例如,假设下面的代码是,如果有人通过我希望将他们重定向到普通的HTTP URL(可能是301重定向?)进行访问,我如何实现这一点

#!/usr/bin/env python

from pprint import pformat
from cherrypy import wsgiserver

def app(environ, start_response):
    status = '200 OK'
    response_headers = [('Content-type', 'text/plain')]
    start_response(status, response_headers)
    return [pformat(environ)]

server = wsgiserver.CherryPyWSGIServer(('0.0.0.0', 80), app)

try:
    server.start()
except KeyboardInterrupt:
    server.stop()

您可以检查
request.scheme
,如果它是“https”,则可以引发重定向


请参见

安德鲁·考克斯的链接再次中断,以下是更新后的链接。我没有足够的理由对他的答案发表评论,因此我提出了新的答案


为什么要在CherryPy中这样做,而Apache可以更高效地这样做?我想这是一个新的有效链接:谢谢@kolinko-我已经使用了github链接。