nginxのログにフルレコードのURLが表示される
質問
本番環境では、以下の nginx サイト設定ファイルを使っています。
log_format main '$http_x_forwarded_for - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $request_time';
server {
root /srv/www/web;
server_name *.test.com;
access_log /var/log/nginx/xxx.test.com.access.log main;
ともに"。 http://a.test.com/ping "と" http://b.test.com/ping http リクエストは xxx.test.com.access.log ファイルに記録されます。
しかし、問題は nginx が xxx.test.com.access.log に "domain name" を保存していないことです。
"です。 http://a.test.com/ping "と" http://b.test.com/ping は、同じリクエスト "Get /ping" を共有しています。
nginx のログに "a.test.com" や "b.test.com" を記録するにはどうすればよいですか?
どのように解決するのですか?
を追加してみてください。
$host
という変数をlog_formatに追加してみてください。
log_format main '$http_x_forwarded_for - $remote_user [$time_local] "$host" "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $request_time';
http://wiki.nginx.org/HttpCoreModule#.24host :
ホスト
この変数は、リクエストのヘッダ中のHost行、もしくはHostヘッダがない場合は もしHostヘッダがなければ、リクエストを処理するサーバの名前になります。 になります。
この変数は、このような場合には $http_host と異なる値を持つかもしれません。 このような場合 1) Host 入力ヘッダがないか、空である場合。 2) Hostの値がポート番号を含む場合、$hostはそのポート番号を含みません。 2) Hostの値がポート番号を含んでいる場合、$hostはそのポート番号を含まない。 0.8.17以降、$hostの値は常に小文字になります。
関連
-
[解決済み】「設定ファイル/etc/nginx/nginx.confのテストに失敗しました」。この原因を知るにはどうしたらいいですか?
-
nginxの問題解決:上流からの応答ヘッダーの読み込み中に上流が接続を早々に切断した
-
アップストリームエラーの読み込み中に、アップストリームが接続を早々に切断した
-
[解決済み] NGINXのproxy_passまたはproxy_redirect
-
[解決済み] Node.js + Nginx - 今度は何?
-
[解決済み] APIゲートウェイとリバースプロキシの比較
-
[解決済み] nginxでproxy_passを使用しているときに応答ヘッダを追加するには?
-
[解決済み] Nginxをアップストリームプロキシとして使用するためにDockerのポートマッピングを設定するには?
-
[解決済み] NGINXのgzipでJavaScriptファイルが圧縮されない
-
nginx プロキシサーバからリクエストヘッダを転送する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] NGINXを設定して、サブルートで場所(同じサーバー名の下)に応じて異なるシングルページアプリケーション(SPA...すなわち静的ファイル)をデプロイする方法
-
Nginxエージェントのリソース: net::ERR_NAME_NOT_RESOLVED の読み込みに失敗しました。
-
nginx スタートアップ・エラー。nginx.serviceのジョブは、制御プロセスがエラーコードで終了したため失敗しました。
-
[解決済み】Nginxの$hostと$http_hostの違いは何ですか?
-
[解決済み] nginx の access_log と error_log をマスタープロセスの STDOUT と STDERR に記録させる
-
[解決済み] MIMEタイプ "text/html "が重複している?
-
[解決済み] Docker Networking - nginx: [emerg] ホストがアップストリームで見つかりません
-
[解決済み] NGINXのプロキシレスポンスでURLを書き換える方法
-
[解決済み] ファイルブラウザモードを有効にするためのnginxの設定方法は?
-
nginx プロキシサーバからリクエストヘッダを転送する