우선, 인터넷 브라우저 의이 사용자 에이전트가 무엇인지, 사용하는 내용을 큰 라인으로 보자.
콘텐츠
사용자 에이전트 (또는 사용자 에이전트) 란 무엇입니까?
모든 인터넷 브라우저 (Internet Explorer, Safari, Opera, Firefoc, Chrome 등)는 호스트 서버 수준에서 방문하는 웹 사이트와 상호 작용하는 에이전트 소프트웨어가 있습니다. 이 소프트웨어는 웹 사이트와 인터넷을 연결하고, 이해하고, 확인하고, 액세스 한 페이지의 내용을 복원합니다. 요컨대, HTTP / HTTPS 프로토콜에서 특정 URL에 액세스하여 요청 된 웹 페이지를 사용자에게 제공하는 사용자와 호스트 서버 간의 상호 작용을 보장합니다.
사용자 에이전트는 액세스하는 서버로 전달 된 헤더, 사용자가 사용하는 소프트웨어, 운영 체제, 브라우저 소프트웨어 패키지 버전에 대한 정보를 포함합니다. 예를 들어 Google Chrome의 사용자 에이전트는 Chrome 버전 및 사용자의 운영 체제에 대한 서버 정보를 재생합니다.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3163.100 Safari/537.36
위의 사용자 에이전트 헤더는 버전을 의미합니다 Chrome 70 컴퓨터에 Procesor AMD,,, 64 비티 아키텍처 운영 체제와 함께 Windows 10.
당신은 아마 스스로에게 물을 것입니다 Mozilla가 Chrome의 사용자 에이전트로 보이는 이유. 이것은 Google (및 IE의 Microsoft)이 Mozilla 및 Safari와 호환되는 모든 사이트에서 Chrome 사용자의 액세스를 용이하게하기 위해 사용하는 일종의 트릭입니다. Applewebkit 콘텐츠 플레이 엔진입니다.
웹 마스터 또는 웹 서버 관리자는 할 수 있습니다 에이전트의 특정 사용자의 액세스를 차단하십시오 webistees에서 호스팅했습니다. 대부분의 경우이 제한이 적용됩니다 웹 로봇 (웹 봇) 웹 사이트의 웹 페이지에 혼란 스럽거나 과도하게 액세스합니다. 다행히도이 봇은 특정 사용자 에이전트를 가지며 웹 서버 로그에서 쉽게 감지 할 수 있습니다.
Nginx가있는 웹 서버에서 사용자 에이전트에 대한 액세스를 차단하는 방법
더 이상이 웹 사이트를 Windows XP 운영 체제와 인터넷 Mozilla Firefox 5.0 사용자에게 허용하지 않는 시나리오를 사용해 보겠습니다.
파일 아래에 코드를 추가하여 구성 Nginx입니다. “섬기는 사람” 차단하다:
if ($http_user_agent = "Mozilla/5.0 (Windows NT 5.1; rv:52.0) Gecko/20100101 Firefox/52.0"){
return 403;
}
Ningx.conf 파일을 저장하십시오 또는 웹 사이트의 특정 파일, 개인화 된 구성 (속도가 가능)을 사용하는 경우 Nginx 서비스를 다시 시작하십시오.
Windows XP의 Firefox 5.0 (최대 5.9 버전 포함)을 가진 모든 사용자는 리디렉션됩니다. 오류 403 (금지 된).
실수 로이 예를 선택하지 않았습니다. Firefox 52.9.0부터 Mozilla는 Windows XP 및 Windows Vista 사용자에 대한 지원을 중단했습니다. Windows Vista의 2017 년에 각각 2014 년 Microsoft에 의해 지원을 중단 한 운영 체제.