저는 이 행동이 꽤 이상하다고 생각해서 여기에 질문을 드립니다.
이 위치 블록을 사용하세요.
location ~ /(wp-config.php|readme.html|licence.txt|license.txt|readme.txt) {
access_log /var/log/nginx/blocked.log blocked;
deny all;
}
로그 파일에는 아무것도 기록되지 않습니다. 그러나모두 거부하다; - 그렇습니다. 마찬가지다403을 반환등
차단된 요청을 기록하고 싶습니다.
nginx version: nginx/1.8.0
업데이트
그 원인은 자신만의 오류 페이지를 정의할 때 발생하는 것으로 보입니다. 예를 들어:
http { ..
error_page 403 /error/403.html;
error_page 404 /error/404.html;
.. }
이 줄을 제거하면 로깅이 허용됩니다.
답변1
확인해야 할 사항:
- 정의하셨나요
blocked
? - 아니면 로그 파일 경로가 정확합니까?
- 일치 하거나 유사 할 가능성이 높
location
으므로 순서를 확인하세요 .wp-config.php
location ~ \.php$
nginx: 1.7.11.1
Windows 환경이지만 Gryphon 에서 작동합니다 .
내 설정은 다음과 같습니다.
http {
...
log_format robots '$remote_addr - $remote_user [$time_local] '
'$host "$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
...
server {
...
location ~/(robots.txt|readme.html) {
access_log logs/nginx-access-robots.log robots;
deny all;
}
...
}
}