特定のアクセスだけをHostnameLookups(DNSルックアップ)したい

» 2001年10月03日 00時00分 公開
[木田佳克ITmedia]

この記事は会員限定です。会員登録すると全てご覧いただけます。

 httpサーバApacheの設定(httpd.conf内)では、HostNameLookupsの指定を「on」にすると、DNSルックアップ(DNSの逆引き)を行い、IPアドレスからドメインを取得してからログ記録される。ただし、この設定ではアクセスされる「すべてのファイル」に対しDNSルックアップが行われ、拡張子htmlやgif、jpg、cgiなどファイル1つ1つすべてが対象だ(※)。DNSへの問い合わせが多くなってApacheのパフォーマンス低下が予想されるため、「Off」にしておくことが広くすすめられている。

※これは最悪の状態を指すものであり、HTTP 1.1に対応されているWebブラウザであればkeep-alive機能によって問い合わせ回数は激減する

 しかし、Offにしておけば記録されるaccess_logファイルには参照元がIPアドレスのまま記録される。アクセス管理ツール上でドメイン名参照したい場合、前もってDNSの逆引きを行う手続きが必要だ。

 次に紹介する方法は、特定の拡張子ファイルのみDNSルックアップを行わせる設定だ。ここでの例はhtmlとcgiの拡張子ファイルのみルックアップさせる指定になっている。「HostnameLookups」の行を見つけて次のように記述しておけばよい。

# vi /usr/local/apache/conf/httpd.conf
....... 中略 .......
HostnameLookups off
<Files ~ "\.(html|cgi)$>
HostnameLookups on
</Files>
....... 中略 .......

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ