Apacheのhttpd.confのCustomLogに、環境変数を複数指定したい

OKWave 2008年01月31日 14時00分

  • このエントリーをはてなブックマークに追加
Apacheのhttpd.confのCustomLogに、環境変数を複数指定したい

初めて質問させていただきます。至らない点もあるかと思いますが宜しくお願いいたします。

似たような質問を探している人がいるかもしれませんので、まず一般的な質問をさせていただきます。Apache2の設定ファイルのhttpd.confに、CustomLogという設定項目がありますが、このCustomLogの書式は


CustomLog [ログファイルパス] [書式] [env=***]

という3つの引数を取るということでいいと思うのですが、この[env=***]のところに、不一致の判定と一致の判定を指定したいのです。

例えばこんな状況です

1) SetEnvIf [判定の条件式1] [環境変数A] [環境変数X]
2) SetEnvIf [判定の条件式2] [環境変数B] [環境変数X]
3) SetEnvIf [判定の条件式3] [環境変数B] [環境変数X]
と、SetEnvIfで環境変数を2個ずつ指定した後、

CustomLog logs/[ログファイルA] combined env=[環境変数A] ←1) に一致で書き込み
CustomLog logs/[ログファイルB] combined env=[環境変数B] ←2,3) に一致で書き込み
CustomLog logs/[ログファイルX] combined env=![環境変数X] ←1,2,3) に不一致で書き込み

となることは分かるのですが、上の例だと不一致と一致を同時に指定することはできません。そのような場合はSetEnvIfの判定条件を工夫するのでしょうか?

私の場合の具体的な質問はこうです。
「WMVファイルだけのアクセスログファイルを作りたい」
「かつ、家庭内LANからのアクセスログは排除したい」
と思い、下のように設定したのですが、


#家庭内LANからのログを排除するための環境変数
SetEnvIf Remote_Addr 192.168.0. nolog
#WMVファイルのログを取るための環境変数
SetEnvIf Request_URI \.wmv$ wmv-files

このように設定すると、最初の例のように、不一致と一致のログをうまく作れません。

長くなってしまってまとまりがありませんが、何分素人なのでこれが限界です。。どうか回答のほど宜しくお願いいたします。

良回答

失礼いたしました。
QNo.3601206の一部をコピーして使用しましたので、ご指摘のように先頭にマッチさせるメタ文字になってしまったものと思います。
「^/string/」という記述を行なって、stringの否定を表現したかったものです。

以下の記述ではどうなりますでしょうか?


SetEnvIf Remote_Addr "192.168.0." nolog
SetEnvIf Request_URI "^/wmv/" nolog (または "^/.wmv/")

CustomLogには env=!nolog のようにenvを否定形で指定する。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

この記事を読んだ方に

関連キーワード
OS

連載

CIO
IT部門の苦悩
Rethink Internet:インターネット再考
インシデントをもたらすヒューマンエラー
トランザクションの今昔物語
エリック松永のデジタルIQ道場
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
「企業セキュリティの歩き方」
「サイバーセキュリティ未来考」
「ネットワークセキュリティの要諦」
「セキュリティの論点」
スペシャル
ざっくりわかるSNSマーケティング入門
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell EMC World
AWS re:Invent
AWS Summit
PTC LiveWorx
より賢く活用するためのOSS最新動向
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
米株式動向
日本株展望
企業決算