User Agent คือสตริงระบุตัวตนที่เบราว์เซอร์ส่งไปยังเซิร์ฟเวอร์ โดยมีข้อมูลเกี่ยวกับอุปกรณ์ ระบบปฏิบัติการ และเบราว์เซอร์ บทความนี้อธิบายหน้าที่ โครงสร้าง ตัวอย่าง UA ของเบราว์เซอร์ยอดนิยม รวมถึงวิธีดูและแก้ไข UA ที่ใช้กันทั่วไป
User Agent (เรียกย่อว่า UA) คือสตริงที่ใช้ระบุซอฟต์แวร์ฝั่งไคลเอนต์ ซึ่งโดยทั่วไปก็คือเบราว์เซอร์ UA จะถูกส่งไปยังเซิร์ฟเวอร์เป็นส่วนหนึ่งของ request headers ของเบราว์เซอร์ เพื่อบอกประเภทและเวอร์ชันของเบราว์เซอร์ รวมถึงระบบปฏิบัติการที่ผู้เข้าชมใช้งาน ทำให้เซิร์ฟเวอร์สามารถส่งเนื้อหาในรูปแบบที่เหมาะสมกลับมาได้ แม้ปกติเราจะไม่เห็น UA แต่ก็ทำงานอยู่เบื้องหลังตลอดเวลา
User Agent ใช้ทำอะไร?
เว็บไซต์สามารถใช้ UA ของเบราว์เซอร์เพื่อมอบประสบการณ์ที่เหมาะสมขึ้นได้ เช่น:
- แสดงหน้าเว็บได้อย่างถูกต้อง: ไม่ว่าจะเข้าผ่านมือถือหรือคอมพิวเตอร์ หน้าเว็บก็สามารถจัดเลย์เอาต์ให้เหมาะสมได้;
- ปรับฟังก์ชันให้เหมาะกับอุปกรณ์: ฟีเจอร์บางอย่างใช้ได้เฉพาะบนอุปกรณ์บางประเภท เว็บไซต์จึงสามารถปรับการทำงานให้เหมาะสม;
- เพิ่มประสิทธิภาพการโหลด: เมื่อเครือข่ายช้า เว็บไซต์อาจส่งหน้าเวอร์ชันที่เรียบง่ายกว่าเพื่อให้โหลดเร็วขึ้น;
- ช่วยตรวจสอบด้านความปลอดภัย: ช่วยระบุได้ว่าการเข้าถึงที่ผิดปกติบางอย่างอาจมาจากโปรแกรมอัตโนมัติหรือไม่
ตัวอย่าง User Agent ที่พบบ่อย
UA string จะแตกต่างกันไปตามอุปกรณ์และระบบ ด้านล่างคือตัวอย่างที่พบบ่อย (หมายเลขเวอร์ชันอาจเปลี่ยนตามเวลาและใช้เพื่อประกอบการอธิบายเท่านั้น):
- Chrome (Windows):
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 - Firefox (Windows):
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:125.0) Gecko/20100101 Firefox/125.0 - Safari (macOS):
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.1 Safari/605.1.15 - Edge (Windows):
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0 - Android Chrome:
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Mobile Safari/537.36 - iOS Safari (iPhone):
Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1
User Agent ประกอบด้วยอะไรบ้าง?
หากแยก UA string ออกเป็นส่วน ๆ โดยทั่วไปจะพบองค์ประกอบเหล่านี้:
- Mozilla/5.0: มีที่มาจากยุคแรกของเบราว์เซอร์ Netscape ปัจจุบันเบราว์เซอร์สมัยใหม่แทบทั้งหมดก็ยังใช้ prefix นี้ตามธรรมเนียมทางประวัติศาสตร์ และไม่ได้มีความหมายพิเศษ;
- (Windows NT 10.0; Win64; x64): ข้อมูลระบบปฏิบัติการในวงเล็บ ซึ่งบอกประเภทระบบ สถาปัตยกรรมแบบบิต และสถาปัตยกรรมของโปรเซสเซอร์;
- AppleWebKit/537.36: ระบุ rendering engine ที่เบราว์เซอร์ใช้และเวอร์ชัน;
- (KHTML, like Gecko): ข้อความระบุความเข้ากันได้ของ rendering engine;
- Chrome/124.0.0.0: ระบุเบราว์เซอร์และเวอร์ชัน;
- Safari/537.36: เบราว์เซอร์จำนวนมากที่ไม่ใช่ Safari ก็มีคำว่า Safari อยู่ด้วย เพื่อให้เข้ากันได้กับเว็บไซต์ที่พึ่งพา WebKit;
- Mobile: หากมี แสดงว่ากำลังเข้าถึงจากอุปกรณ์มือถือ

วิธีดูและแก้ไข User Agent
ดู UA วิธีที่ง่ายที่สุดคือเข้าเว็บไซต์ตรวจสอบ browser fingerprint ซึ่งจะวิเคราะห์และแสดง UA ปัจจุบันของเบราว์เซอร์ให้โดยตรง หรือเปิด developer tools ของเบราว์เซอร์ (โดยทั่วไปกด F12 หรือคลิกขวาแล้วเลือก “Inspect”) จากนั้น refresh หน้าในแท็บ “Network” และดู UA string ใน request headers ของ request ใด request หนึ่ง
วิธีที่ใช้กันทั่วไปในการแก้ UA
- Developer tools: เบราว์เซอร์อย่าง Chrome และ Firefox สามารถเปลี่ยน UA ชั่วคราวผ่าน device emulation หรือ network conditions ใน developer tools เหมาะสำหรับการพัฒนาและ debugging;
- Browser extensions: extension อย่าง User-Agent Switcher ช่วยให้สลับไปใช้ UA ที่ตั้งไว้ล่วงหน้าของอุปกรณ์ต่าง ๆ ได้อย่างรวดเร็ว;
- เครื่องมือจัดการ environment แบบมืออาชีพ: หากต้องควบคุมหลาย environment อย่างละเอียดและต้องการให้ UA สอดคล้องกับ browser fingerprint ทั้งชุด สามารถใช้เครื่องมือจัดการ browser environment เช่น PurpleMark
ข้อควรจำสำคัญเมื่อแก้ UA หากเปลี่ยนเพียง UA แต่ไม่ปรับ fingerprint dimensions อื่น ๆ เช่น browser engine, WebGL และ Canvas ให้สอดคล้องกัน เว็บไซต์อาจยังตรวจพบความผิดปกติในลักษณะ “UA ไม่ตรงกับ environment” เครื่องมือจัดการ environment แบบมืออาชีพสามารถปรับ browser fingerprint parameters อื่น ๆ ให้ตรงกับ UA ที่เลือก ทำให้ environment ดูใกล้เคียงอุปกรณ์จริงมากกว่าการเปลี่ยนแค่สตริง

ทำไมการจัดการ UA จึงสำคัญเมื่อใช้หลายบัญชี?
ในการใช้งานหลายบัญชี ควรจัดการ UA อย่างระมัดระวัง: UA ของแต่ละบัญชีควรสอดคล้องกับอุปกรณ์และระบบที่เกี่ยวข้อง มิฉะนั้นแพลตฟอร์มอาจมองว่า environment มีความผิดปกติ นอกจากนี้เพื่อลดความเสี่ยงที่บัญชีต่าง ๆ จะถูกเชื่อมโยงกันโดยไม่ตั้งใจ โดยทั่วไปบัญชีที่แยกจากกันควรใช้ UA combination ที่แตกต่างกัน
สำหรับผู้ดูแลหลายบัญชีที่ต้องการแยก environment ออกจากกันในระดับสูง PurpleMark สามารถสร้าง browser environment ที่เป็นอิสระและครบถ้วนสำหรับแต่ละบัญชี พร้อมควบคุมการตั้งค่าตั้งแต่ UA ไปจนถึง fingerprint parameters อื่น ๆ ได้อย่างละเอียด ทำให้ environment ใกล้เคียงอุปกรณ์จริงมากขึ้น และลดความเสี่ยงที่บัญชีจะถูกเชื่อมโยงกันอย่างผิดพลาด
ข้อควรคำนึงด้านการปฏิบัติตามกฎ: environment และบัญชีทั้งหมดควรใช้งานภายใต้กฎที่แพลตฟอร์มนั้นอนุญาต PurpleMark มีไว้เพื่อช่วยจัดการบัญชีที่คุณเป็นเจ้าของให้เป็นไปตามข้อกำหนด ไม่ใช่เพื่อหลีกเลี่ยงข้อจำกัดที่แพลตฟอร์มห้ามไว้
คำถามที่พบบ่อย
User Agent หมายถึงอะไร? User Agent แสดงตัวตนของ client ที่ส่ง network request ซึ่งโดยทั่วไปคือเบราว์เซอร์ และมีข้อมูล เช่น ประเภทอุปกรณ์ ระบบปฏิบัติการ ประเภทเบราว์เซอร์ และเวอร์ชัน เซิร์ฟเวอร์ใช้ข้อมูลเหล่านี้เพื่อส่งเนื้อหาในรูปแบบที่เหมาะสม
จะดู User Agent ของเบราว์เซอร์ได้อย่างไร? เข้าเว็บไซต์ตรวจสอบ browser fingerprint เพื่อดู UA ของอุปกรณ์ปัจจุบัน หรือเปิด developer tools แล้ว refresh หน้าในแท็บ “Network” จากนั้นตรวจสอบ UA string ใน request headers
จะเปลี่ยน User Agent ได้อย่างไร? สามารถเปลี่ยน UA ชั่วคราวใน network conditions ของ browser developer tools หรือใช้ extension เช่น User-Agent Switcher เพื่อสลับ preset ได้อย่างรวดเร็ว หาก environment ต้องการความสอดคล้องของ fingerprint ทั้งชุด สามารถใช้เครื่องมือมืออาชีพอย่าง PurpleMark ได้
Mozilla/5.0 คือเบราว์เซอร์อะไร? ไม่ได้หมายถึงเบราว์เซอร์ใดเบราว์เซอร์หนึ่งโดยเฉพาะ แต่เป็น UA prefix ที่เบราว์เซอร์สมัยใหม่แทบทั้งหมดใช้ต่อเนื่องมาตามธรรมเนียมทางประวัติศาสตร์ตั้งแต่ยุคแรกของอินเทอร์เน็ต ข้อมูลระบุตัวตนที่ตามหลังต่างหากที่ใช้แยกแยะเบราว์เซอร์จริง ๆ


