Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> サーバー関連 -> HTTPDの溜まりきったログを一気に削除する方法

HTTPDの溜まりきったログを一気に削除する方法

サーバー運用代行先で、スパム業者からのアクセスなどが原因で、HTTPDのログが大量生成され、サーバーダウンしてしまう・・・という、悪質な状況に悩まされていました。

ログを手動で解析したり、削除したりするのがめんどくさくなってきたので、自動で、過去ログを削除するプログラムをPHPで組みました。

なお、$pathを変更して、別のディレクトリに適用させたりすると、場合によっては一撃死したりするので、取り扱いには十分気を付けて下さい(爆)

access_logや、error_logなどのファイルは削除せずに、access_log-20141028などの、日付付きのファイルを削除するようにしています。

<?php $path = "/var/log/httpd/"; $dirs = scandir($path); foreach($dirs as $dir){ if($dir == "." || $dir == ".."){continue;} if(preg_match("/[0-9]/", $dir)){ unlink($path.$dir); echo "deleted {$path}{$dir}.\n"; } } ?>
あとは、crontabで、 0 0 * * * php /path/to/delete_log.php みたいにしておけば、一日に一回、自動削除されます。 これで、安眠できる・・・。

この記事の最終更新日:2018/11/06
最初に記事を書いた日:2018/11/06

この記事をシェアする

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

関連記事

資料室のトップに戻る
Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> サーバー関連 -> HTTPDの溜まりきったログを一気に削除する方法
▲Top English