누군가가 내 서버에 타격 최신 사람들을 추적하기 위해이 일을 나에게 말했다 :내 Apache2 access.log에서 표시되는 내용을 어떻게 필터링합니까?
tail -f access.log
그러나,이 등 JS 파일, 그래픽, 포함, 모두가 "포함"을 보여줍니다 내가 경우 사람들이 쳤던 페이지를보고 싶습니까? tail -f를 사용하여 필터링하려면 어떻게합니까?
누군가가 내 서버에 타격 최신 사람들을 추적하기 위해이 일을 나에게 말했다 :내 Apache2 access.log에서 표시되는 내용을 어떻게 필터링합니까?
tail -f access.log
그러나,이 등 JS 파일, 그래픽, 포함, 모두가 "포함"을 보여줍니다 내가 경우 사람들이 쳤던 페이지를보고 싶습니까? tail -f를 사용하여 필터링하려면 어떻게합니까?
grep
또는 awk
을 통해 출력을 파이프 할 수 있습니다. 모든 페이지가 URL에 .php
이있는 경우 예를 들어, 다음과 같은 시도 할 수 있습니다 : 액세스 로그는 리퍼러 필드를 포함하는 경우
tail -f access.log | grep '\.php'
, 위에서 언급 한 많은 자원을 일치합니다. 요청 입력란에 .php
의 이벤트 만 있고 리퍼러 입력란에는 관심이 없습니다. awk
을 사용하면 이러한 차이를 구분할 수 있습니다.
tail -f access.log | awk '$7 ~ /\.php/ { print }'
로그 형식이 비정상적인 경우에는 $7
을 조정해야 할 수도 있습니다. 예를 들어 양자 택일
tail -f access_log | grep ".php"
당신에 포함 된 모든라는 이름의 폴더에있는 경우, "포함":
당신이 .PHP 제공하는 경우 파일
tail -f access_log | grep "include" -v
또는 당신이 원하는 경우 특정 파일에 대한 조회수를 계산하십시오.
grep "filename" access_log -c