ผลต่างระหว่างรุ่นของ "ยูอาร์แอล"

เนื้อหาที่ลบ เนื้อหาที่เพิ่ม
ย้อนการก่อกวน 1 ครั้งของ Thanapol Saotong (พูดคุย) ไปยังรุ่นโดย Horus.ด้วยสจห.
ป้ายระบุ: ทำกลับ
ไม่มีความย่อการแก้ไข
ป้ายระบุ: การแก้ไขแบบเห็นภาพ แก้ไขจากอุปกรณ์เคลื่อนที่ แก้ไขจากเว็บสำหรับอุปกรณ์เคลื่อนที่
บรรทัด 1:
'''ตัวชี้แหล่งในอินเทอร์เน็ต''' หรือ '''โปรแกรมชี้แหล่งทรัพยากรสากล'''<ref>[http://rirs3.royin.go.th/coinages/webcoinage.php ศัพท์บัญญัติ ราชบัณฑิตยสถาน]</ref> ({{lang-en|Uniform Resource Locator, Universal Resource Locator}}) เรียกโดยย่อว่า '''ยูอาร์แอล''' ({{lang-en|URL}}) คือ[[ตัวระบุแหล่งทรัพยากรสากล]] (URI) ประเภทหนึ่ง ซึ่งใช้สำหรับระบุแหล่งที่อยู่ของทรัพยากรที่ต้องการ และมีกลไกบางอย่างสำหรับดึงข้อมูลทรัพยากรนั้นมา ในการใช้ในเอกสารทางเทคนิคและการอภิปรายทั่วไป มักจะใช้ยูอาร์แอลแทนความหมายที่คล้ายกับยูอาร์ไอ <ref name="RFC 3986">Tim Berners-Lee, Roy T. Fielding, Larry Masinter. (January 2005). “[http://gbiv.com/protocols/uri/rfc/rfc3986.html Uniform Resource Identifier (URI) : Generic Syntax]”. Internet Society. <nowiki>RFC 3986</nowiki>; STD 66.</ref> ซึ่งไม่ใช่ความหมายที่ถูกต้องและอาจทำให้เกิดความสับสน ในภาษาพูดทั่วไป ยูอาร์แอลอาจหมายถึง ''ที่อยู่บนเว็บ'' หรือ ''ที่อยู่[[อินเทอร์เน็ต]]'' ก็ได้ ซึ่งปกติแล้วเรามักพิมพ์ยูอาร์แอลในแถบที่อยู่ของ[[เว็บเบราว์เซอร์]]เพื่อเรียกข้อมูลจากเว็บไซต์
 
== ประวัติ ==
ตัวชี้แหล่งในอินเทอร์เน็ตสร้างขึ้นเมื่อ พ.ศ. 2533 (ค.ศ. 1990) โดย[[ทิม เบอร์เนิร์ส-ลี]] โดยเป็นส่วนหนึ่งของตัวระบุแหล่งทรัพยากรสากล <ref name="URL Spec">[http://www.w3.org/Addressing/URL/url-spec.txt URL Specification]</ref> ซึ่งเขาก็ไม่พอใจกับรูปแบบของยูอาร์แอลเท่าใดนัก เพราะว่าแทนที่เขาจะแบ่งเส้นทางจากใหญ่ไปหาเล็ก แต่เขาแยกเซิร์ฟเวอร์ที่แบ่งด้วยจุด กับเส้นทางของไฟล์ที่แบ่งด้วยทับออกจากกัน <ref name="WWW History">[http://web.archive.org/20090210171942/mrfweb.wordpress.com/ World Wide Web History]</ref> ตัวอย่างเช่นยูอาร์แอลนี้ <tt><nowiki>http://www.serverroute.com/path/to/file.html</nowiki></tt> เขาคิดไว้ว่ามันควรจะเป็นแบบนี้ <tt><nowiki>http://com/serverroute/www/path/to/file.html</nowiki></tt>
 
== วากยสัมพันธ์ ==
ยูอาร์แอลทุกชื่อประกอบขึ้นจาก [[แผนของตัวระบุแหล่งทรัพยากรสากล]] (URI scheme) (โดยทั่วไปเรียกว่า[[โพรโทคอล]]), ตามด้วย[[ทวิภาค]] (:) และอื่น ๆ ขึ้นอยู่กับแผนที่ใช้งาน, [[ชื่อแม่ข่าย]] (hostname) หรือ[[ที่อยู่ไอพี]], [[หมายเลขพอร์ต]], ชื่อเส้นทางไปยังไฟล์ที่จะดึงข้อมูลมาหรือโปรแกรมที่จะทำงาน, และสุดท้ายคือ[[สายอักขระสอบถาม]] (query string) โดยเฉพาะเมื่อทำงานกับ[[โปรแกรมต่อประสานร่วมสำหรับเกตเวย์]] (CGI) <ref>RFC 1738</ref><ref name="parse_url">{{Citation | title = PHP parse_url () Function | url=http://us.php.net/parse_url | accessdate = 2009-03-12}}</ref> สำหรับการเรียกไฟล์[[เอชทีเอ็มแอล]] สามารถใส่จุดตรึง (anchor) เป็นทางเลือก เพื่อเลื่อนเว็บเพจไปยังจุดที่ต้องการได้ด้วย <ref name="Syntax">[http://pangea.stanford.edu/computerinfo/hosting/urlsyntax/index.html URL Syntax]</ref> ดังนั้นรูปแบบโดยทั่วไปของยูอาร์แอลก็คือ
 
<nowiki>resource_type://domain:port/filepathname?query_string#anchor</nowiki>
 
* แผนของตัวระบุ หรือชนิดของทรัพยากร ได้นิยาม[[เนมสเปซ]] จุดประสงค์ และ[[วากยสัมพันธ์ (ภาษาโปรแกรม)|วากยสัมพันธ์]]ของส่วนอื่นที่เหลือของยูอาร์แอลไว้แล้ว โปรแกรมที่ทำงานบนเว็บจะพยายามถอดความหมายยูอาร์แอลตามแผนและบริบทของมัน ตัวอย่างเช่น [[เว็บเบราว์เซอร์]]จะถอดความหมายของยูอาร์แอล <tt><nowiki>http://example.org:80</nowiki></tt> ว่าให้ส่งการร้องของไปบนเอชทีทีพี ไปยังเครื่องแม่ข่ายที่ชื่อว่า example.org ที่พอร์ตหมายเลข 80 หรือสำหรับ[[ชื่อทรัพยากรสากล]] (URN) เช่น <tt><nowiki>mailto:bob@example.com</nowiki></tt> จะเป็นการเริ่มต้นโปรแกรมเขียน[[อีเมล]] แล้วนำชื่อ <nowiki>bob@example.com</nowiki> ไปใส่ในฟีลด์ชื่อผู้รับ เป็นต้น สำหรับแผนของตัวระบุอื่น ๆ ก็มีอย่างเช่น [[https]]:, [[gopher]]:, wais:, [[ftp]]: ฯลฯ
* [[ชื่อโดเมน]]ที่จดทะเบียนหรือ[[ที่อยู่ไอพี]]เป็นที่อยู่เป้าหมายสำหรับยูอาร์แอล เช่นชื่อโดเมน google.com หรือไอพี 72.14.207.99 ก็เป็นที่อยู่ของเว็บไซต์[[กูเกิล]] เป็นต้น
* ชื่อแม่ข่ายหรือชื่อโดเมนที่เป็นส่วนหนึ่งของยูอาร์แอลนั้น อักษรตัวเล็กตัวใหญ่ไม่มีความสำคัญ เพราะว่า[[ระบบการตั้งชื่อโดเมน]] (DNS) ได้กำหนดไว้เช่นนั้น ดังนั้น <tt><nowiki>http://en.wikipedia.org/</nowiki></tt> กับ <tt><nowiki>HTTP://EN.WIKIPEDIA.ORG/</nowiki></tt> ทั้งคู่เปิดไปยังหน้าเดียวกัน
* หมายเลขพอร์ตเป็นส่วนประกอบที่ไม่จำเป็นต้องใส่ ซึ่งถ้าหากไม่ใส่ก็จะใช้หมายเลขพอร์ตปริยายของแผนนั้น ตัวอย่างเช่น หากพิมพ์ยูอาร์แอลนี้ <tt><nowiki>http://myvncserver.no-ip.org:5800</nowiki></tt> ลงไปในช่องที่อยู่ เว็บเบราว์เซอร์จะเชื่อมต่อไปยังหมายเลขพอร์ต 5800 ของเครื่องแม่ข่าย myvncserver.no-ip.org ซึ่งพอร์ตนี้ถูกใช้โดยโปรแกรมควบคุมระยะไกลของ [[Virtual Network Computing]] ถ้าไม่ใส่ จะเชื่อมต่อไปยังพอร์ตหมายเลข 80 ซึ่งเป็นพอร์ตปริยายของเอชทีทีพี เครื่องแม่ข่ายหนึ่งอาจสามารถเชื่อมต่อได้หลายพอร์ตและต่างบริการก็ได้
* ชื่อเส้นทางของไฟล์ คือที่อยู่ในเครื่องแม่ข่ายซึ่งไฟล์หรือโปรแกรมนั้นบันทึกอยู่ ส่วนนี้อักษรตัวเล็กตัวใหญ่มีความสำคัญตามหลักการ แต่ก็อาจไม่มีความสำคัญในเครื่องให้บริการบางเครื่องก็ได้ โดยเฉพาะ[[เว็บเซิร์ฟเวอร์]]ที่ทำงานอยู่บน[[ไมโครซอฟท์ วินโดวส์]] เช่นว่า สำหรับบนเครื่องแม่ข่ายที่อักษรตัวเล็กตัวใหญ่มีความสำคัญ การเรียกทรัพยากรไปยังยูอาร์แอล <tt><nowiki>http://en.wikipedia.org/wiki/URL</nowiki></tt> ให้ผลที่ถูกต้อง แต่ถ้าเรียกไปยัง <tt><nowiki>http://en.wikipedia.org/WIKI/URL</nowiki></tt> หรือ <tt><nowiki>http://en.wikipedia.org/wiki/url</nowiki></tt> จะคืนค่าเป็นหน้าข้อความผิดพลาดรหัส [[รายชื่อรหัสสถานภาพของเอชทีทีพี|404]] แต่สำหรับเว็บเซิร์ฟเวอร์บนวินโดวส์ ยูอาร์แอลทั้งสามจะเปิดไปยังหน้าเดียวกัน
* [[สายอักขระสอบถาม]]เป็นข้อมูลที่ส่งผ่านไปยัง[[เว็บแอปพลิเคชัน]] เช่นโปรแกรมซีจีไอ สายอักขระสอบถามจะถูกแบ่งไว้เป็นชื่อตัวแปร เครื่องหมาย[[เท่ากับ]] (=) และค่าของมันเป็นคู่ ๆ คั่นด้วย[[แอมเพอร์แซนด์]] (&) เช่น <tt>first_name=John&last_name=Doe</tt> การส่งสายอักขระสอบถามไปกับทรัพยากรธรรมดาอาจไม่มีประโยชน์อะไร
* จุดตรึงในยูอาร์แอล ใช้กับเอชทีทีพีสำหรับระบุตำแหน่งบน[[หน้าเว็บ]] เช่นยูอาร์แอลนี้ <tt><nowiki>http://en.wikipedia.org/wiki/URL#Syntax</nowiki></tt> จะเป็นการระบุถึงส่วนที่ชื่อว่า Syntax ในหน้าเว็บนั้น ในบางเว็บไซต์ ส่วนประกอบจุดตรึงอาจมีฟังก์ชันการทำงานอย่างอื่น ดูเพิ่มใน[[ตัวระบุชิ้นส่วน]] (fragment identifier)
 
== ยูอาร์แอลสัมบูรณ์และยูอาร์แอลสัมพัทธ์ ==
ยูอาร์แอลสัมบูรณ์ (absolute URL) หรือยูอาร์แอลเต็ม คือการระบุทรัพยากรไฟล์ในตำแหน่งที่แน่นอน และมีเพียงหนึ่งเดียว หมายความว่าถ้ายูอาร์แอลสองชื่อเหมือนกัน จะโยงมาที่ไฟล์เดียวกันเสมอ ไม่ว่าจะเรียกจากที่ตำแหน่งใด <ref name="Relative URLs">[http://www.webdevelopersnotes.com/design/relative_and_absolute_urls.php3 Absolute vs Relative URLs]</ref> ตัวอย่างเช่น
 
<nowiki>http://en.wikipedia.org/wiki/File:Raster_to_Vector_Mechanical_Example.jpg</nowiki>
 
ในทางตรงข้าม ยูอาร์แอลสัมพัทธ์ (relative URL) หรือยูอาร์แอลย่อ คือการระบุแหล่งทรัพยากรไฟล์ที่ต้องการจากตำแหน่งอ้างอิงหรือตำแหน่งปัจจุบัน การใช้งานแบบนี้มักพบได้ในการอ้างถึงไฟล์อื่นที่อยู่ต่าง[[ไดเรกทอรี]] <ref name="Relative URLs"/> โดยจะใช้จุดสองจุด (..) เพื่ออ้างถึงไดเรกทอรีชั้นที่อยู่เหนือขึ้นไป
<nowiki>../directory_path/file.txt</nowiki>
และใช้จุดเดียว (.) หรือไม่ใส่ทั้งจุดและเครื่องหมายทับ เพื่ออ้างถึงไดเรกทอรีปัจจุบัน
บรรทัด 30:
 
== ชื่อแม่ข่ายอินเทอร์เน็ต ==
ชื่อแม่ข่าย (hostname) คือ[[ชื่อโดเมน]]ที่กำหนดให้ไว้กับคอมพิวเตอร์ที่รับฝากไฟล์บนอินเทอร์เน็ต (host) มักจะเป็นการรวมกันระหว่างชื่อคอมพิวเตอร์ภายในเครือข่ายกับชื่อโดเมนส่วนบน ตัวอย่างเช่น "en.wikipedia.org" ประกอบด้วยชื่อภายใน "en" และชื่อโดเมน "wikipedia.org" ชื่อแม่ข่ายประเภทนี้จะถูกแปลงไปเป็น[[ที่อยู่ไอพี]]โดยไฟล์ [[hosts]] หรือโดย[[ระบบการตั้งชื่อโดเมน]] (DNS) คอมพิวเตอร์หนึ่งเครื่องสามารถมีชื่อแม่ข่ายได้หลายชื่อ ปกติแล้ว[[ระบบปฏิบัติการ]]ในเครื่อง จะมีชื่อแม่ข่ายหนึ่งชื่อที่ใช้สำหรับการอ้างถึงเครื่องตัวเอง ([[localhost]])
{{บทความหลัก|ชื่อแม่ข่าย}}
ชื่อแม่ข่าย (hostname) คือ[[ชื่อโดเมน]]ที่กำหนดให้ไว้กับคอมพิวเตอร์ที่รับฝากไฟล์บนอินเทอร์เน็ต (host) มักจะเป็นการรวมกันระหว่างชื่อคอมพิวเตอร์ภายในเครือข่ายกับชื่อโดเมนส่วนบน ตัวอย่างเช่น "en.wikipedia.org" ประกอบด้วยชื่อภายใน "en" และชื่อโดเมน "wikipedia.org" ชื่อแม่ข่ายประเภทนี้จะถูกแปลงไปเป็น[[ที่อยู่ไอพี]]โดยไฟล์ [[hosts]] หรือโดย[[ระบบการตั้งชื่อโดเมน]] (DNS) คอมพิวเตอร์หนึ่งเครื่องสามารถมีชื่อแม่ข่ายได้หลายชื่อ ปกติแล้ว[[ระบบปฏิบัติการ]]ในเครื่อง จะมีชื่อแม่ข่ายหนึ่งชื่อที่ใช้สำหรับการอ้างถึงเครื่องตัวเอง ([[localhost]])
 
ชื่อโดเมนก็สามารถใช้เป็นชื่อแม่ข่ายได้เช่นกัน ในกรณีที่มีการกำหนดที่อยู่ไอพีให้กับชื่อโดเมนนั้น เช่น ทั้ง "en.wikimedia.org" และ "wikimedia.org" และ "rr.pmtpa.wikimedia.org" ต่างก็เป็นชื่อแม่ข่ายเพราะมีที่อยู่ไอพี แต่สำหรับชื่อโดเมน "pmtpa.wikimedia.org" ไม่เป็นชื่อแม่ข่ายเพราะไม่มีไอพีกำหนดเอาไว้ (แม้ว่า "rr.pmtpa" จะเป็นส่วนย่อยของ "pmtpa" ก็ตาม) ดังนั้นชื่อแม่ข่ายทุกชื่อจึงเป็นชื่อโดเมน แต่ชื่อโดเมนบางชื่อเท่านั้นที่เป็นชื่อแม่ข่าย (ชื่อแม่ข่ายเป็น[[เซตย่อย]]ของชื่อโดเมน)
 
== อ้างอิง ==
{{รายการอ้างอิง}}
 
== อ ==
[[หมวดหมู่:มาตรฐานอินเทอร์เน็ต]]
[[หมวดหมู่:ตัวระบุ]]