반응형
기본 사항

브라우저가 웹사이트에 연결하면 HTTP 헤더에 User Agent 필드가 포함됩니다. User Agent 필드의 내용은 브라우저마다 다릅니다각 브라우저에는 고유한 User Agent가 있습니다본질적으로 User Agent는 브라우저가 "안녕하세요저는 Windows에서 Mozilla Firefox입니다." 또는 "안녕하세요저는 iPhone Safari입니다"라고 웹서버에 말하는 것과 같습니다.

웹서버는이 정보를 사용하여 서로 다른 웹페이지를 다른 웹브라우저와 다른 운영 체제에 제공할 수 있습니다예를 들어 웹사이트는 모바일 페이지를 최신 모바일 페이지로최신 페이지를 최신 브라우저로또는 "브라우저를 업그레이드하십시오"라는 메시지를 브라우저에 보낼 수 있습니다.

사용중인 브라우저 User Agent String 알아내는 방법

아래와 같이 "https://www.whoishostingthis.com/tools/user-agent/웹사이트에 접속하면 현재 사용중인 브라우저의 User Agent String를 알아낼 수 있습니다.


User Agent String 역사

Mosaic는 최초의 브라우저 중 하나였습니다. User Agent String 'NCSA_Mosaic/2.0'입니다나중에 Mozilla가 나왔고 (나중에 Netscape로 바뀜), User Agent String'Mozilla/1.0'이었습니다. Mozilla Mosaic보다 고급 브라우저였습니다특히 프레임을 지원했습니다웹 서버는 User Agent String Mozilla라는 단어가 들어 있는지 확인하고Mozilla 브라우저에 프레임이 포함된 페이지를 보냈습니다다른 브라우저에서는 웹 서버가 프레임이 없는 페이지를 보냈습니다.

결국 Microsoft Internet Explorer도 등장했으며 프레임도 지원했습니다그러나 IE는 프레임이 있는 웹 페이지를받 지 못했습니다웹 서버가 모질라 브라우저로 전송했기 때문입니다이 문제를 해결하기 위해 Microsoft User Agent String Mozilla라는 단어를 추가하고 추가 정보 ("compatible" IE에 대한 참조)를 던졌습니다웹 서버는 Mozilla라는 단어를 보게되어 IE에 현대 웹 페이지를 보냈습니다나중에 나온 다른 브라우저도 똑같은 일을 했습니다.

결국 일부 서버는 Gecko (Firefox의 렌더링 엔진)라는 단어를 찾고 Gecko 브라우저에 이전 브라우저와 다른 페이지를 제공했습니다원래 Konquerer를 위해 KDE 데스크탑용으로 개발된 KHTML에는 Gecko와 같은 최신 페이지를 얻을 수 있도록 ""like Gecko"이라는 단어가 추가되었습니다. WebKit KHTML을 기반으로 개발되었지만 WebKit이라는 단어를 추가하고 호환성을 위해 원래의 "KHTML, like Gecko" 줄을 유지했습니다이런 식으로 브라우저 개발자는 계속해서 User Agent String에 단어를 추가했습니다.

웹 서버는 정확한 User Agent String이 무엇인지 신경쓰지 않습니다단지 특정 단어가 포함되어 있는지 확인하기만 하면 됩니다.

User Agent String 용도

웹 서버는 다음과 같은 다양한 용도로 User Agent String를 사용합니다.

▶ 다른 웹 브라우저에는 다른 웹 페이지 제공함예를 들어구형 브라우저에 단순한 웹 페이지를 제공합니다.
▶ 다른 운영 체제에는 다른 콘텐츠를 표시함모바일 장치에는 그 장치에 맞게 간소화된 페이지를 보내줍니다.
▶ 사용자가 사용중인 브라우저 및 운영 체제를 보여주는 통계를 수집합니다브라우저 시장 점유율 통계를 본 적이 있다면이것이 통계를 입수하는 방법입니다.

웹 크롤링 로봇도 User Agent String을 사용합니다예를 들어 Google의 웹 크롤러는 다음과 같이 자신을 식별합니다.

웹 서버는 봇에게 특별한 등록 절차 ( : 필수 등록 화면을 통해 허용)를 제공 할 수 있습니다. (, User Agent String Googlebot으로 설정하여 등록 화면을 무시할 수도 있음을 의미합니다.)

웹 서버는 robots.txt 파일을 사용하여 특정 봇 (또는 모든 봇)에게 주문을 제공할 수도 있습니다예를 들어 웹 서버는 특정 봇에게 정보를 제공하지 못하게 하거나다른 봇에게 정보를 제공하도록 지정할 수 있습니다. robots.txt 파일에서 봇은 User Agent String로 식별됩니다.

모든 주요 브라우저에는 Custom User Agent String을 설정할 수 있는 방법이 포함되어 있으므로 웹 서버가 다른 브라우저로 보내는 내용을 볼 수 있습니다예를 들어 데스크톱 브라우저를 모바일 브라우저의 User Agent String로 설정하면 데스크톱에 모바일 버전의 웹 페이지가 표시됩니다.


반응형
Posted by HLIFEINFO
,