외부 파싱, 크롤링, 해킹 시도 차단을 위한 nginx 설정
표제건 관련, Nginx 설정 참조입니다.
http {
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=5r/s; # 1초에 5 요청 제한
server {
listen 80; # 또는 다른 포트
server_name your_domain.com; # 또는 IP 주소
location / {
limit_req zone=mylimit burst=10 nodelay; # 10개까지 버스트 허용
# 다른 location 설정들...
}
# 다른 location 블록들...
}
# 다른 server 블록들...
}
수정후
nginx -t 했을 때 오류가 나면
/etc/nginx/nginx.conf 참조하여
이 파일에
http {
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=5r/s; # 1초에 5 요청 제한
.....
}
위 강조부분만 추가하고
기존
/etc/nginx/sites-available/default 또는 /etc/nginx/sites-available/abc.zone 파일을 열어서
http {
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=5r/s; # 1초에 5 요청 제한
server {
}
....
}
로 되어 있다면 위 강조부분 제거하고
nginx -t 해서 ok 떨어지면 정상...
*** 주의사항
limit_req_zone / limit_req설정은 사이트 로딩 속도에 직접적인 영향을 줄 수 있습니다.
rate/burst값이 너무 낮으면 정상 사용자에게도 503에러가 날 수 있습니다.
설정 테스트후 최적의 값을 결정하는 것이 좋습니다.
By 웹학교