3

私はすでに数年稼働している純粋なCherryPyサーバーを持っています。最近、SSLサポートを追加することにしました。この場合、証明書とキーファイルを提供し、変数cherrypy.server.ssl_certificateとに正しい値を割り当てるだけで十分でしたcherrypy.server.ssl_private_key

誰かが「https:// ...」ではなく「http:// ...」を使用してページにアクセスしようとするたびに、この変更について警告したいと思います。システムに多くの変更を加えることなく、これを実現する簡単な方法はありますか?もう1つのオプションは、HTTPアクセスをHTTPSにリダイレクトすることです。これは簡単に実行できますか?

4

1 に答える 1

3

あなたが求めているものを達成するためにカスタムハンドラーを作成します。これにより、自動的に HTTPS にリダイレクトされます。

class Functions():
    def check_ssl(self=None):
        # check if url is in https and redirect if http
        if cherrypy.request.scheme == "http":
            cherrypy.HTTPRedirect(Referer.replace("http:", "https:"))

    cherrypy.tools.Functions = cherrypy.Tool('before_handler', check_ssl)
于 2013-02-04T12:46:53.803 に答える