Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ระบบเครือข่าย

URL (Uniform Resource Locator) คืออะไร? โครงสร้าง ตัวอย่าง และกฎการใช้งาน

ย่อมาจาก URL Uniform Resource Locator คือวิธีการระบุตำแหน่งของไฟล์บนอินเทอร์เน็ต เราใช้ URL เพื่อเปิดไม่เพียงแค่เว็บไซต์ แต่ยังรวมถึงการดาวน์โหลดรูปภาพ วิดีโอ โปรแกรม และไฟล์ประเภทต่างๆ ที่โฮสต์อยู่บนเซิร์ฟเวอร์

การเปิด ไฟล์ท้องถิ่น (local file) บนคอมพิวเตอร์ของคุณง่ายเพียงดับเบิลคลิก แต่เพื่อเปิดไฟล์บน คอมพิวเตอร์ระยะไกล (remote computers) เช่น เว็บเซิร์ฟเวอร์ เราต้องใช้ URL เพื่อให้เว็บเบราว์เซอร์รู้ว่าต้องไปดูที่ไหน ตัวอย่างเช่น การเปิดไฟล์ HTML ที่แสดงหน้าเว็บด้านล่าง ทำได้โดยการพิมพ์ URL ลงในแถบนำทาง (address bar) ที่ด้านบนของเบราว์เซอร์ที่คุณใช้

ชื่อเรียกอื่นๆ

Uniform Resource Locators มักย่อว่า URLs แต่ยังเรียกว่า ที่อยู่เว็บไซต์ (website addresses) เมื่อหมายถึง URL ที่ใช้โปรโตคอล HTTP หรือ HTTPS

URL มักอ่านออกเสียงตัวอักษรทีละตัว (คือ ยู-อาร์-ออล ไม่ใช่ อิร์ล) มันเคยเป็นคำย่อของ Universal Resource Locator ก่อนจะเปลี่ยนเป็น Uniform Resource Locator ในปี 1994

ตัวอย่าง URL

คุณคงเคยพิมพ์ URL เช่นนี้เพื่อเข้าเว็บไซต์ของ Google:

https://www.google.com

ทั้งหมดที่อยู่เรียกว่า URL ตัวอย่างอื่น คือเว็บไซต์นี้ (แรก) และ Microsoft (ที่สอง):

https://www.lifewire.com
https://www.microsoft.com

คุณสามารถระบุได้เฉพาะเจาะจงถึง URL โดยตรงของรูปภาพ ตัวอย่างเช่น URL ต่อไปนี้นำไปสู่โลโก้ของ Google บนเว็บไซต์ Wikipedia:

https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Google_2015_logo.svg/220px-Google_2015_logo.svg.png

คุณจะเห็นว่ามันเริ่มด้วย https:// และมี URL ปกติเหมือนตัวอย่างข้างต้น แต่ต่อมามีข้อความและเครื่องหมายทับมากขึ้น เพื่อชี้ไปที่โฟลเดอร์และไฟล์ที่แน่นอนที่รูปภาพเก็บอยู่บนเซิร์ฟเวอร์ของเว็บไซต์

แนวคิดเดียวกันใช้ได้เมื่อคุณเข้าถึงหน้าล็อกอินของเราเตอร์ ที่อยู่ IP ของเราเตอร์ถูกใช้เป็น URL เพื่อเปิดหน้าตั้งค่า

เราคุ้นเคยกับ URL ประเภทนี้ที่ใช้ในเบราว์เซอร์อย่าง Firefox หรือ Chrome แต่นี่ไม่ใช่กรณีเดียวที่คุณต้องใช้ URL

ในตัวอย่างทั้งหมดนี้ คุณใช้โปรโตคอล HTTP เพื่อเปิดเว็บไซต์ ซึ่งน่าจะเป็นโปรโตคอลเดียวที่คนส่วนใหญ่เจอ แต่ก็มีโปรโตคอลอื่นๆ ที่ใช้ได้ เช่น FTP, TELNET, MAILTO, และ RDP URL ยังสามารถชี้ไปที่ไฟล์ท้องถิ่นบนฮาร์ดดิสก์ได้เช่นกัน แต่ละโปรโตคอลอาจมีกฎไวยากรณ์ (syntax) ที่แตกต่างกันเพื่อไปถึงปลายทาง

โครงสร้างของ URL

URL สามารถแยกส่วนได้หลายส่วน แต่ละส่วนมีหน้าที่เฉพาะเมื่อเข้าถึงไฟล์ระยะไกล

URL แบบ HTTP และ FTP มีโครงสร้างเหมือนกัน คือ protocol://hostname/fileinfo ตัวอย่างเช่น การเข้าถึงไฟล์ FTP ด้วย URL อาจดูแบบนี้:

FTP://servername/folder/otherfolder/programdetails.docx

ซึ่งนอกจากมี FTP แทน HTTP แล้ว ดูเหมือน URL อื่นๆ ที่คุณเจอบนเว็บ

ลองใช้ URL ต่อไปนี้เป็นตัวอย่างของที่อยู่ HTTP และระบุแต่ละส่วน:

https://security.googleblog.com/2018/01/todays-cpu-vulnerability-what-you-need.html
  • https คือโปรโตคอล (เช่นเดียวกับ FTP) ที่กำหนดประเภทของเซิร์ฟเวอร์ที่คุณสื่อสาร
  • security คือโฮสต์เนม (hostname) ที่ใช้เข้าถึงเว็บไซต์เฉพาะนี้
  • googleblog คือชื่อโดเมน (domain name)
  • com คือ Top-Level Domain (TLD) อื่นๆ เช่น .net, .org, .co.uk เป็นต้น
  • /2018/01/ แสดงไดเรกทอรีที่ใช้จัดระเบียบหน้าเว็บหรือไฟล์ บนเว็บเซิร์ฟเวอร์ที่เก็บไฟล์เว็บไซต์ นี่คือโฟลเดอร์จริงที่คุณจะคลิกผ่านไปหาไฟล์ที่ URL ระบุ
  • todays-cpu-vulnerability-what-you-need.html คือไฟล์จริงที่ URL ชี้ไป ถ้าโหลดรูปภาพ ไฟล์เสียง หรือไฟล์ชนิดอื่นแทน HTML URL จะลงท้ายด้วยนามสกุลไฟล์นั้น (เช่น .png หรือ .mp3)
  • security.googleblog.com รวมกันเรียกว่า Fully Qualified Domain Name (FQDN)

กฎไวยากรณ์ (Syntax Rules) ของ URL

ใน URL อนุญาตให้ใช้ได้เฉพาะตัวเลข ตัวอักษร และตัวอักษรพิเศษต่อไปนี้: ()!$-'_*+.

ตัวอักษรอื่นๆ ต้องเข้ารหัส (encoded) ให้กลายเป็นรหัสโปรแกรมมิ่ง เพื่อให้ยอมรับได้

บาง URL มีพารามิเตอร์ที่แยกออกจากตัวแปรเพิ่มเติม ตัวอย่างเช่น เมื่อคุณค้นหา lifewire บน Google:

https://www.google.com/search?q=lifewire

เครื่องหมายคำถามที่คุณเห็น บอกสคริปต์บนเซิร์ฟเวอร์ของ Google ว่าคุณต้องการส่งคำสั่งเฉพาะเพื่อให้ได้ผลลัพธ์ที่กำหนดเอง

สคริปต์เฉพาะที่ Google ใช้สำหรับการค้นหา รู้ว่าสิ่งที่ตามหลัง ?q= ใน URL ควรถูกระบุว่าเป็นคำค้นหา ดังนั้นสิ่งที่พิมพ์ ณ จุดนั้นใน URL จะถูกใช้ค้นหาบนเครื่องมือค้นหาของ Google

คุณจะเห็นพฤติกรรมคล้ายกันใน URL ค้นหา YouTube สำหรับ best cat videos:

https://www.youtube.com/results?search_query=best+cat+videos

แม้ช่องว่างจะไม่อนุญาตใน URL บางเว็บไซต์ใช้เครื่องหมาย + ซึ่งคุณเห็นในตัวอย่าง Google และ YouTube ทั้งคู่อื่นๆ ใช้รหัสเข้ารหัสของช่องว่าง คือ %20

URL บางตัวสามารถสลับพารามิเตอร์ได้ขึ้นอยู่กับบริบท ตัวอย่างดีคือการเพิ่ม timestamp (เวลา) ให้วิดีโอ YouTube บางลิงก์ต้องการแอมเพอร์แซนด์ (&) บางตัวใช้เครื่องหมายคำถาม

URL ยังสามารถใช้ anchors (จุดยึด) ได้ อยู่ท้ายสุด และบอกว่าในหน้านั้นต้องกระโดดไปตำแหน่งไหนเมื่อคลิกลิงก์ Anchors สร้างขึ้นเมื่อเพิ่มลิงก์ในหน้าเว็บ ใช้เครื่องหมายแฮช (#) ตัวอย่างใน Wikipedia ที่ anchor นำไปสู่ส่วนอื่นของหน้า:

https://en.wikipedia.org/wiki/Lifewire#History

URL ที่ใช้ตัวแปรหลายตัว จะใช้แอมเพอร์แซนด์ (&) หนึ่งหรือหลายตัวหลังเครื่องหมายคำถาม ตัวอย่างการค้นหา Windows 10 บน Amazon.com:

https://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3Daps&field-keywords=windows+10

ตัวแปรแรก url นำหน้าด้วยเครื่องหมายคำถาม แต่ตัวแปรถัดไป field-keywords นำหน้าด้วยแอมเพอร์แซนด์ ตัวแปรเพิ่มเติมก็จะนำหน้าด้วยแอมเพอร์แซนด์เช่นกัน

ส่วนของ URL คำนึงถึงตัวพิมพ์เล็ก/ใหญ่ (case sensitive) — โดยเฉพาะทุกอย่าง หลัง ชื่อโดเมน (ไดเรกทอรีและชื่อไฟล์) คุณลองทดสอบได้ด้วยตัวเอง ถ้าคุณพิมพ์คำว่า "need" ให้เป็นตัวใหญ่ใน URL ตัวอย่าง Google ที่เราแยกส่วนข้างต้น ทำให้ท้าย URL อ่านว่า todays-cpu-vulnerability-what-you-NEED.html ลองเปิดดู จะไม่โหลด เพราะไฟล์เฉพาะนั้นไม่มีอยู่บนเซิร์ฟเวอร์

ข้อมูลเพิ่มเติมเกี่ยวกับ URL

ถ้า URL ชี้ไปที่ไฟล์ที่เบราว์เซอร์แสดงได้ เช่น รูปภาพ JPG คุณไม่ต้องดาวน์โหลดลงคอมพิวเตอร์ก่อนก็ดูได้ แต่สำหรับไฟล์ที่ไม่ได้แสดงในเบราว์เซอร์ปกติ เช่น PDF, DOCX และโดยเฉพาะ EXE (และไฟล์ชนิดอื่นๆ มากมาย) คุณจะได้รับแจ้งให้ดาวน์โหลด

URL ให้วิธีง่ายๆ ให้เราเข้าถึงที่อยู่ IP ของเซิร์ฟเวอร์โดยไม่ต้องรู้ที่อยู่จริง มันเหมือนชื่อที่จำง่ายสำหรับเว็บไซต์โปรดของเรา การแปลงจาก URL เป็นที่อยู่ IP คือสิ่งที่ DNS servers ทำหน้าที่

บาง URL ยาวและซับซ้อน เหมาะสำหรับคลิกเป็นลิงก์หรือคัดลอก/วางในแถบที่อยู่ของเบราว์เซอร์ ความผิดพลาดใน URL อาจสร้างรหัสข้อผิดพลาด HTTP 400-series ที่พบบ่อยที่สุดคือ 404 error

ถ้าคุณพยายามเข้าถึงหน้าที่ไม่มีอยู่บนเซิร์ฟเวอร์ จะได้ข้อผิดพลาด 404 ข้อผิดพลาดประเภทนี้พบบ่อยมาก จนบางเว็บไซต์ทำหน้า 404 แบบกำหนดเอง มักตลกหรือสร้างสรรค์ หากคุณมีปัญหาเข้าถึงเว็บไซต์หรือไฟล์ออนไลน์ที่คิดว่าควรโหลดได้ปกติ ลอง troubleshooting URL

URL ส่วนใหญ่ไม่ต้องระบุพอร์ต (port) การเปิด google.com เช่นกัน สามารถทำได้โดยระบุพอร์ตนัมเบอร์ท้าย URL เช่น https://www.google.com:80 แต่ไม่จำเป็น ถ้าเว็บไซต์ทำงานบนพอร์ต 8080 แทน คุณสามารถเปลี่ยนพอร์ตและเข้าถึงหน้านั้นได้

โดยค่าเริ่มต้น เว็บไซต์ FTP ใช้พอร์ต 21 แต่อาจตั้งค่าบนพอร์ต 22 หรืออื่นๆ ถ้าเว็บ FTP ไม่ได้ใช้พอร์ต 21 คุณต้องระบุว่ามันใช้พอร์ตไหน เพื่อเข้าถึงเซิร์ฟเวอร์ได้ถูกต้อง แนวคิดเดียวกันใช้กับ URL ใดๆ ที่ใช้พอร์ตต่างจากค่าเริ่มต้นที่โปรแกรมสมมติว่าใช้

คำถามที่พบบ่อย (FAQ)

  • ฉันสามารถบล็อก URL ได้ไหม? ได้ วิธีการบล็อกเว็บไซต์ขึ้นอยู่กับอุปกรณ์และระบบปฏิบัติการ เบราว์เซอร์ส่วนใหญ่ให้บล็อกเว็บไซต์เฉพาะได้ และคุณสามารถบล็อก URL ทั้งเครือข่ายผ่านการตั้งค่าเราเตอร์
  • Vanity URL คืออะไร? Vanity URL คือ URL สั้นและจำง่าย ที่ redirect (เปลี่ยนเส้นทาง) จาก URL ยาวและซับซ้อนกว่า เพื่อสร้าง Vanity URL ให้ใช้ URL shortener ที่เสนอโดเมนกำหนดเอง
  • Callback URL คืออะไร? Callback URL คือหน้าที่ผู้ใช้ถูก redirect ไปหลังจากทำการกระทำเสร็จในเว็บไซต์หรือโปรแกรมอื่น ตัวอย่างเช่น ถ้าคุณซื้อของบนเว็บไซต์และถูกนำไปหน้าชำระเงินของบุคคลที่สาม คุณจะถูกส่งกลับไปที่ callback URL (มักเป็นหน้ายืนยัน) บนเว็บไซต์เดิมหลังชำระเงินเสร็จ
  • HTTP และ HTTPS ต่างกันยังไง? ความแตกต่างหลักคือ HTTPS ปลอดภัยกว่า ดังนั้นควรใช้เสมอในเว็บไซต์ที่ต้องส่งข้อมูลที่ต้องการความปลอดภัย