今回は、Express で HTTP を HTTPS に転送する方法と注意点を説明します。実際のケースを見てみましょう。
ローカルでテストしたとき、HTTPはポート3000を使用し、HTTPSはポート443を使用しました。
HTTPとHTTPSを同時に監視します
前の記事を参照してください。高速ローカルテストHTTPS
すべてのGETリクエストを転送します
httpApp.get("*", (req, res, next) => { let host = req.headers.host; host = host.replace(/\:\d+$/, ''); // Remove port number res.redirect(`https://${host}${req.path}`); });
と同等ですこのとき、ブラウザは 302 (MOVED_TEMPORARILY) ステータス コードを受け取り、HTTPS にリダイレクトされます。
すべてのリクエストを転送します
httpApp.all("*", (req, res, next) => { let host = req.headers.host; host = host.replace(/\:\d+$/, ''); // Remove port number res.redirect(307, `https://${host}${req.path}`); });
2 つの変更があることに注意してください。
httpApp.get が httpApp.all に変更されましたプロジェクトでAngularjsカスタム命令を使用する方法
以上がExpress で HTTP を HTTPS に転送する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。