> 백엔드 개발 > PHP 튜토리얼 > nginx+php는 Linux 시스템에서 서버 웹사이트 로그 정리를 구현합니다.

nginx+php는 Linux 시스템에서 서버 웹사이트 로그 정리를 구현합니다.

little bottle
풀어 주다: 2023-04-06 11:58:01
앞으로
3067명이 탐색했습니다.

本篇文章主要讲述的是在Linux系统下用nginx和php实现清理服务器网站日志,具有一定参考价值,感兴趣的朋友可以了解一下,希望对你能有所帮助。 

1.清空nginx站点日志的内容(如果删除日志文件,只有重启服务器才能重新生成日志文件进行记录)

编辑脚本 

添加定时任务,每月的14号和28号的12点0分执行清理脚本

相关教程:Linux视频教程   nginx视频教程

2.删除iis站点过期的日志(我的日志是天计划,另外一点需要注意的是不能删除当天的日志,因为会有警告说已经在系统打开)


<?php
/* 
    清理IIS网站过期日志,释放C盘空间 
*/

$logs_path = "C:\inetpub\logs\LogFiles";    //日志所在路径
$folder_head = "W3SVC";    //日志文件夹名的前缀
$file_head = "u_ex";    //日志文件名的前缀
$file_foot = ".log";    //日志文件名的后缀

$logs_path = str_replace("\\", "/", $logs_path);
if (! file_exists($logs_path)) die(&#39;日志目录不存在&#39;);
$scan = scandir($logs_path);
$folders = array();    //定义变量存在日志文件夹名

for ($i=0; $i < count($scan); $i++) { 
    if((substr($scan[$i], 0, strlen($folder_head)) == $folder_head) && file_exists($logs_path.&#39;/&#39;.$scan[$i]))
        array_push($folders, $scan[$i]);
}

$today = date(&#39;Ymd&#39;);
$today = substr($today, 2);
$todayLog = $file_head.$today.$file_foot;


for ($i=0; $i < count($folders); $i++) { 

    $filesInFolder = scandir($logs_path.&#39;/&#39;.$folders[$i]);

    for ($j=0; $j < count($filesInFolder); $j++) { 
        if(($filesInFolder[$j] != $todayLog) && 
            (substr($filesInFolder[$j], 0, strlen($file_head)) == $file_head) &&
            (strrev(substr(strrev($filesInFolder[$j]), 0,strlen($file_foot))) == $file_foot))
            unlink($logs_path.&#39;/&#39;.$folders[$i].&#39;/&#39;.$filesInFolder[$j]);
    }
}

echo &#39;过期日志清理完毕&#39;;

?>
로그인 후 복사


编辑删除脚本 clear.php

编辑bat批处理文件,存放位置任意,双击该文件即可完成删除,此处不做定时任务,手动删除

 相关教程:PHP视频教程 

위 내용은 nginx+php는 Linux 시스템에서 서버 웹사이트 로그 정리를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:cnblogs.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿