Nginx のヘッドパラメータがピットを踏む

バックグラウンド

今日、デバッグインターフェイスで、Spring Gatewayに直接アクセスすると、すべてのリクエストヘッダーパラメータは正常に読み取れるが、テスト環境に公開されてnginxによって転送されると、リクエストヘッダーのキーがapp_user_idであるパラメータが読み取られることがわかりました。は入手できません。

解決

同僚が [nginx request header missing] を検索したところ、nginx が下線付きのヘッダー情報を制限していることがわかりました。

解決策 1: nginx はアンダースコアをサポートしていないため、問題はありませんが、アンダースコアを使用しないでください。たとえば、元の old_token を old-token に変更できます。(通常、ヘッダーの名前は User-Agent のように - で連結されます)。

解決策 2:

nginx の nginx.conf 設定ファイルの http セクションに underscores_in_headers on を追加し、次のように設定します。

http {

mime.types を含めます。

デフォルトタイプアプリケーション/オクテットストリーム;

ファイルを送信します。

underscores_in_headers オン;

キープアライブタイムアウト 65;

}

Guess you like

Origin blog.csdn.net/lzzyok/article/details/127231714