【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【Apache】アクセスログの見方をやさしく解説!※ 2024年更新

こんにちは!
株式会社ビヨンド四国オフィスのペルシャ猫、いのうえです。

カッコよく言えば MSP の私が日々障害対応していくなかで、頻繁に見ることがあるアクセスログ。
今回は、MSP 必須!!Apacheのアクセスログの見方をやさしく解説していこうと思います。

※ nginx のアクセスログの見方はコチラをチェック!

アクセスログってなんだ?

アクセスログとは、サーバーへ接続した履歴です。日付や時間、アクセス元のIPアドレスやリクエストされたページ、使用されたブラウザやデバイスなどの情報が記録されています。

私たち MSP がアクセスログを利用している一例として、アラート対応が挙げられます。

アラートが出ているサーバーのアクセスログを見て、平常時と比べてアクセス数が増減しているかを確認します。アクセス数が急増していればサーバーに大きな負荷がかかっていることになります。

またアクセスされているページを確認して、本当にがページ存在しているかを確認することもあります。

Apache のアクセスログを見てみよう!

[root@test-aws-harukainoue httpd]# tail access_log
xxx.xx.xx.xxx - - [11/Dec/2019:12:01:22 +0000] "GET / HTTP/1.0" 200 35 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3602.2 Safari/537.36"

※ 実行結果から一部抜粋しております。

なんだか、よくわからない英数字や記号がズラズラと並んでいます。

アクセスログを解析しよう!

Apache の設定ファイルは、デフォルトだと「/etc/httpd/conf/httpd.conf」に書かれています。
「/etc/httpd/conf/httpd.conf」ファイルの中を見ると

LogFormat "%h %l %u %t \"%r\" %t %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "logs/access_log" combined

と書かれており、combined というフォーマットがデフォルト設定されていることが分かります。
ログは、このフォーマットに添って表示される仕組みになっています。

フォーマット文字列 フォーマットの意味 アクセスログの値 備考
%h リモートホストのIPアドレス xxx.xx.xx.xxx
%l 接続元のユーザー名 ‐(未設定) ここは、だいたいの場合 - になっていることが多いですが
mod_ident がサーバに存在して、 IdentityCheck ディレクティブが On に設定されていると値が出力されます。
%u リモートユーザー ‐(未設定)
%t アクセスされた日時 2019/11/11 12:01
\"%r\" アクセスされたファイル ・アクション = GET

・HTTP = プロトコル

・リソース = 1.0

※ バックスラッシュは、「\」で表示されています。
%>s ステータスコード 200(正常)
%b リソースに対する点送量 35バイト
\"%{Referer}i\" アクセス元のURL ‐(未設定) どこかのサイトを経由して来たのか、
URL から直接アクセスしたのかが出力されます。
\"%{User-Agent}i\" なんの OS でどのブラウザからアクセスしてきたか Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3602.2 Safari/537.36 ・OS = Linux

・ブラウザ = Chrome

ステータスコードの意味についてちょっと知ってみる

ステータスコードとは、WebサーバーとWebブラウザが、お互いの状態をやり取りするために数字(コード)で表したもの

200 = リクエスト成功
301 = リクエストしたページが別のぺーじに移動している
302 = 一時的に別のページに移動中
403 = リクエストしたページを表示する権限なし
404 = リクエストしたページが存在しない
500 = サーバ側でエラー発生

まとめ

アクセスログを見ることができたら、MSP 力はグンと上がるはず!

日々、アラート対応していく中で、Webサーバーで急激に負荷が上がった際は、必ずアクセスログを見ます。
攻撃的なアクセスがあったかどうかも、アクセスログを確認するとわかります。
私も、目を血眼にしてアクセスログを見ています!(`・ω・´)
今回ブログに記したことで、私の理解度も深まりました。

今後もトライアンドエラーとやらを繰り返し、
お気に入りのコマンドや、個人的にもっと理解を深めたいことに関してブログを書いていきます。

また、今回は Apache のアクセスログの見方を解説しましたが、メンバーが nginx のアクセスログの見方についてもブログを書いてくれたので、こちらも併せてご覧ください!

【nginx】アクセスログの見方・設定・場所等を解説

日々成長、日々前進。
毎日、私自身をアップデートしていかなければ!!!
最後まで読んでくださって、ありがとうございます。

クラウド / サーバー運用監視サービス(24時間365日)はコチラ ▼ 

クラウド / サーバー運用監視サービス(24時間365日)

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
14
読み込み中...
14 票, 平均: 1.00 / 114
214,856
X facebook はてなブックマーク pocket
【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

この記事をかいた人

About the author

井上明香

システムソリューション部に所属。
ビヨンドに四国オフィス設立メンバーとして入社。IT業界に未経験で飛び込みました。
教育チームとして、新卒、中途、既存メンバーのカリキュラムの作成や研修の実施を行っています。
主な業務は、サーバーの運用保守。
とにかく、お客様のコンテンツを大切に思っています。
Webコンテンツ事業部、YouTubeチームにも所属。