HTTPをHTTPSにリダイレクトするようにlighttpdを設定する方法は?

HTTPをHTTPSにリダイレクトするようにlighttpdを設定する方法は?

クライアントブラウザでサポートされている場合は、私のウェブサイトへのHTTPリクエストをHTTPSにリダイレクトしたいと思います。私のWebサーバーはlighttpdです。

ベストアンサー1

これが私が手動で行った方法です。安全でないリクエストヘッダーのアップグレード。 lighttpdに関するドキュメントが見つからず、共有しているのにうまくいくようです。

ドメインの lighttpd 構成に以下を追加します。

$HTTP["host"] =~ "^example\.com$" {
        $HTTP["scheme"] == "http" {
                $REQUEST_HEADER["Upgrade-Insecure-Requests"] == "1" {
                        # Follows https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Upgrade-Insecure-Requests
                        # Adding the header only works if mod_setenv is loaded before mod_redirect in the server config!
                        # (See https://redmine.lighttpd.net/issues/1895)
                        setenv.add-response-header = (
                            "Vary" => "Upgrade-Insecure-Requests" 
                          )
                        url.redirect-code = 307
                        url.redirect = ("/(.*)" => "https://example.com/$1")
                }
        }
        # ... any extra configuration for domain example.com ...
}

変更を適用するには、lighttpdを再起動してください。

注:これを行うには、mod_setenvとmod_redirectをロードする必要があり、リダイレクト応答の一部として追加のヘッダーを送信する必要がないとします。

おすすめ記事