ลิงก์แบบสัมบูรณ์และแบบสัมพันธ์ เส้นทางใน HTML ลิงก์แบบสัมบูรณ์และแบบสัมพันธ์ในลิงก์ html

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

ลิงก์ที่เกี่ยวข้องจะขึ้นอยู่กับรากของไซต์หรือเอกสารปัจจุบัน

ตัวอย่าง 8.2 แสดงวิธีสร้างลิงก์แบบสัมบูรณ์ไปยังไซต์อื่น

ตัวอย่างที่ 8.2 การใช้การอ้างอิงแบบสัมบูรณ์

ที่อยู่ที่แน่นอน



การเรียนรู้ HTML

เมื่อคุณระบุไดเร็กทอรีไซต์เป็นลิงก์ (เช่น http://site/css/) ไฟล์ดัชนีจะปรากฏขึ้น นี่คือไฟล์ที่โหลดตามค่าเริ่มต้นเมื่อเข้าถึงไดเร็กทอรีโดยไม่ระบุชื่อไฟล์อย่างชัดเจน โดยทั่วไปไฟล์ดัชนีจะเป็นเอกสารชื่อ index.html

โดยปกติลิงก์แบบสัมบูรณ์ใช้เพื่อชี้ไปยังเอกสารบนทรัพยากรเครือข่ายอื่น อย่างไรก็ตาม คุณสามารถสร้างลิงก์แบบสัมบูรณ์ภายในไซต์ปัจจุบันได้เช่นกัน

อย่างไรก็ตาม มักไม่ค่อยมีใครปฏิบัติเช่นนี้ เนื่องจากลิงก์ดังกล่าวค่อนข้างยาวและยุ่งยาก ดังนั้นลิงก์ที่เกี่ยวข้องจึงถูกใช้ภายในไซต์เป็นส่วนใหญ่

ลิงค์ที่เกี่ยวข้องกับเอกสารปัจจุบัน

เมื่อสร้างลิงก์ที่เกี่ยวข้อง คุณต้องเข้าใจว่าควรระบุค่าใดสำหรับแอตทริบิวต์ href เนื่องจากค่านั้นขึ้นอยู่กับตำแหน่งดั้งเดิมของไฟล์

ลองดูตัวเลือกทั่วไปบางประการ

1. ไฟล์อยู่ในโฟลเดอร์เดียว (รูปที่ 8.4)

ชื่อไฟล์นี้ใช้เป็นตัวอย่างเท่านั้น บนไซต์ ไม่ควรใช้อักขระภาษารัสเซียที่มีช่องว่างในชื่อไฟล์ และแม้แต่ในกรณีที่แตกต่างกัน

2. ไฟล์จะถูกวางไว้ในโฟลเดอร์ต่าง ๆ (รูปที่ 8.5)

เมื่อเอกสารต้นฉบับถูกจัดเก็บไว้ในโฟลเดอร์เดียว และเอกสารที่ลิงก์อยู่ในรากของไซต์ ควรวางจุดสองจุดและเครื่องหมายทับ (/) หน้าชื่อไฟล์ในที่อยู่ลิงก์ ดังที่แสดงด้านล่าง

จุดสองจุดในกรณีนี้หมายถึงการปล่อยให้โฟลเดอร์ปัจจุบันอยู่ในระดับที่สูงกว่า

3. ไฟล์จะถูกวางไว้ในโฟลเดอร์ต่าง ๆ (รูปที่ 8.6)

ตอนนี้ไฟล์ต้นฉบับอยู่ในโฟลเดอร์ย่อยสองโฟลเดอร์ และเพื่อที่จะลิงก์ไปยังเอกสารในรากของไซต์ คุณจะต้องทำซ้ำตัวอย่างก่อนหน้านี้สองครั้ง

ลิงค์

จุดสองจุดในกรณีนี้หมายถึงการปล่อยให้โฟลเดอร์ปัจจุบันอยู่ในระดับที่สูงกว่า

โปรดทราบว่าไม่มีจุดหรือเครื่องหมายทับเพิ่มเติมก่อนชื่อโฟลเดอร์

จุดสองจุดในกรณีนี้หมายถึงการปล่อยให้โฟลเดอร์ปัจจุบันอยู่ในระดับที่สูงกว่า

หากไฟล์ไม่ได้อยู่ภายในโฟลเดอร์เดียว แต่มีสองโฟลเดอร์เส้นทางไปยังไฟล์นั้นจะถูกเขียนเช่นนี้

ลิงก์ที่เกี่ยวข้องกับรูทของไซต์ บางครั้งคุณสามารถค้นหาเส้นทางไปยังไฟล์ที่สัมพันธ์กับรูทของไซต์ได้"/โฟลเดอร์/ชื่อไฟล์" โดยมีเครื่องหมายทับที่จุดเริ่มต้น ใช่ บันทึกหลักสูตร

หมายความว่าลิงก์นำไปสู่โฟลเดอร์ชื่อหลักสูตรซึ่งอยู่ที่รูทของไซต์และในนั้นคุณต้องดาวน์โหลดไฟล์ดัชนี

โปรดทราบว่าการบันทึกรูปแบบนี้ใช้ไม่ได้กับเครื่องคอมพิวเตอร์เฉพาะที่ แต่อยู่ภายใต้การควบคุมของเว็บเซิร์ฟเวอร์เท่านั้น

บทความนี้ประกอบด้วยโค้ดบางส่วน สามารถดาวน์โหลดเวอร์ชันเต็มได้ที่นี่ - https://bitbucket.org/okiselev/html-and-css-learn/src โฟลเดอร์ - “absolute_path_lvl_1” และโฟลเดอร์ย่อยทั้งหมด

เส้นทางอาจเป็นแบบสัมบูรณ์หรือแบบสัมพัทธ์ก็ได้

เส้นทางที่แน่นอน

เส้นทางที่แน่นอนคือเส้นทางจากโฟลเดอร์รูทไปยังไฟล์

เส้นทางประกอบด้วยโฟลเดอร์ทั้งหมดที่เราต้องดูโดยคั่นด้วยเครื่องหมายทับ ลองดูตัวอย่าง:

/absolute_path_lvl_1/level_2.1/level_3.1/เควิน.png

เส้นทางที่แน่นอนไปยังไฟล์

เส้นทางสัมพัทธ์

เส้นทางสัมพัทธ์คือลิงก์ที่ชี้ไปยังหน้าอื่นๆ บนไซต์ของคุณโดยสัมพันธ์กับหน้าเว็บที่มีลิงก์นั้นอยู่แล้ว

หากเราย้ายโฟลเดอร์ลงมา เราจะแยกโฟลเดอร์เหล่านั้นโดยใช้ “/” หากคุณต้องการยกระดับ ให้เขียน “..”

1. ตัวอย่างที่ง่ายที่สุดของเส้นทางสัมพันธ์เป็นเพียงชื่อไฟล์ หากไฟล์อยู่ใกล้ๆ เพียงระบุชื่อไฟล์

สวัสดี.png


เส้นทางสัมพัทธ์ไฟล์ใกล้เคียง

2. ขึ้นไปหนึ่งโฟลเดอร์

../เควิน_lvl_2.png

เส้นทางสัมพัทธ์ 2 3. ตัวอย่างที่ซับซ้อนกว่านี้จาก Diff_paths.html

ไปถ่ายรูปกับเควิน

../level_2.1/level_3.1/เควิน.png


เส้นทางสัมพัทธ์ 3

อะไรคือความแตกต่างระหว่างเส้นทางสัมบูรณ์และเส้นทางสัมพัทธ์?

มันง่ายมาก หากระบุพาธจากรูทของระบบ นี่จะเป็นพาธสัมบูรณ์ มันเหมือนกับที่อยู่ไปรษณีย์ในชีวิตจริง ไม่ว่าคุณจะไปที่ไหน แต่ด้วยที่อยู่ที่แน่นอน คุณจะพบสถานที่ที่เหมาะสมเสมอ

หากไม่ได้ระบุรูทที่จุดเริ่มต้นของเส้นทาง เส้นทางนี้จะสัมพันธ์กัน และจะถูกสร้างขึ้นจากตำแหน่งปัจจุบัน ในชีวิตจริงก็เหมือนกับถนนไปร้านเหล้า "ไปทางซ้าย 2 ช่วงตึกและตรงไปจนสุดทาง" เส้นทางนี้สามารถเข้าถึงได้จากจุดเฉพาะเท่านั้น จากที่อื่นคุณจะพบกับสถานที่ที่แตกต่างไปจากเดิมอย่างสิ้นเชิง ในไฟล์ Absolute_path_lvl_1/level_2.2/Diff_paths.html

คุณสามารถดูตัวอย่างหน้า HTML ที่มีเส้นทางไฟล์ต่างกันได้


D:/hgprojects → ฉันดาวน์โหลดโปรเจ็กต์ “html-and-css-learn” ที่นี่ คุณอาจมีวิธีอื่น


PS - รายละเอียดเพิ่มเติมในหนังสือ "

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

ลิงก์ภายนอกทั้งหมดในแอตทริบิวต์ href ของแท็ก มีเส้นทางที่แน่นอนไปยังเอกสารที่พวกเขาอ้างถึง ลิงก์ภายในสามารถมีทั้งเส้นทางแบบสัมบูรณ์และแบบสัมพัทธ์ (ในกรณีนี้ขึ้นอยู่กับความชอบส่วนตัวของคุณ)

ลิงก์ทั้งหมดสามารถแบ่งออกเป็นแบบสัมพัทธ์และแบบสัมบูรณ์ได้ ลิงค์ที่เกี่ยวข้อง- ลิงก์เหล่านี้เป็นลิงก์ HTML ที่มีเส้นทางสัมพัทธ์เป็นลิงก์ภายในเท่านั้น ลิงก์สัมบูรณ์- ลิงก์เหล่านี้เป็นลิงก์ที่มีพาธแบบสัมบูรณ์ ลิงก์แบบสัมบูรณ์อาจเป็นได้ทั้งภายนอกหรือภายใน

เส้นทางที่แน่นอนไปยังไฟล์

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

ส่วนของเส้นทาง คำอธิบาย ค่าตัวอย่าง
ชื่อไฟล์ หากคุณระบุเฉพาะชื่อไฟล์เป็นค่าแอตทริบิวต์ หมายความว่าไฟล์ที่ต้องการอยู่ในโฟลเดอร์เดียวกันกับเพจที่มีลิงก์ "เพจ.html"
แค็ตตาล็อก/ หากไฟล์ที่เราต้องระบุเส้นทางนั้นอยู่ในไดเร็กทอรีลูกที่เกี่ยวข้องกับไฟล์ที่มีลิงก์ นั่นหมายความว่าเราต้องลงไปหนึ่งระดับ (ไปยังโฟลเดอร์ลูกของไดเร็กทอรีปัจจุบัน) ในกรณีนี้ เส้นทางเริ่มต้นด้วยชื่อของไดเรกทอรีย่อยหลังจากนั้น ชื่อจะถูกระบุด้วยเครื่องหมายทับ “/” ซึ่งทำหน้าที่แยกส่วนของเส้นทางตามด้วยชื่อของไฟล์ที่เราต้องการ

หมายเหตุ: คุณสามารถลงไปได้มากเท่ากับโฟลเดอร์ที่คุณสร้างไว้ ตัวอย่างเช่น หากคุณสร้างโฟลเดอร์ไว้ต่ำกว่าระดับราก 10 ระดับ คุณสามารถระบุเส้นทางที่จะพาคุณลงไป 10 โฟลเดอร์ได้ อย่างไรก็ตาม หากคุณมีหลายระดับ เป็นไปได้มากว่าการจัดระเบียบเว็บไซต์ของคุณจะอึดอัดโดยไม่จำเป็น

" ไดเร็กทอรี/page.html "

" directory1/directory2/page.html "

../ หากคุณต้องการระบุว่าไฟล์ที่คุณกำลังลิงก์ไปอยู่ในโฟลเดอร์หลัก ให้ใช้สัญลักษณ์ .. (จุดสองจุด) ซึ่งหมายถึงเลื่อนขึ้นไปหนึ่งระดับ (ไปยังโฟลเดอร์หลักของไดเร็กทอรีปัจจุบัน) ต่อไป เราระบุเครื่องหมายทับ " / " เพื่อแยกส่วนของเส้นทาง และเขียนชื่อไฟล์ของเรา

หมายเหตุ: สัญลักษณ์ .. สามารถใช้ได้หลายครั้งตามที่คุณต้องการติดต่อกัน การใช้สัญลักษณ์เหล่านั้นจะย้ายคุณขึ้นไปหนึ่งโฟลเดอร์ในแต่ละครั้ง อย่างไรก็ตาม คุณสามารถขึ้นไปได้จนกว่าจะถึงโฟลเดอร์รูทของไซต์ของคุณ คุณไม่สามารถไปสูงกว่าโฟลเดอร์นี้ได้

" ../page.html "

" ../../page.html "

" ../../../cat1/cat2/page.html " - เราขึ้นไปจากโฟลเดอร์ปัจจุบันสามไดเร็กทอรีที่สูงกว่า และจากนั้นเราลงไปอีกสองระดับจากไฟล์ที่ต้องการ

/ เส้นทางสัมพัทธ์ไม่จำเป็นต้องเริ่มต้นโดยสัมพันธ์กับตำแหน่งปัจจุบันของเพจที่เชื่อมโยงเสมอไป แต่ยังสามารถเริ่มต้นโดยสัมพันธ์กับไดเร็กทอรีรากของไซต์ได้ด้วย ตัวอย่างเช่น หากไฟล์ที่ต้องการอยู่ในไดเร็กทอรีราก เส้นทางสามารถเริ่มต้นด้วยสัญลักษณ์ " / " หลังจากนั้นคุณเพียงแค่ต้องระบุชื่อไฟล์ที่ต้องการซึ่งอยู่ในไดเร็กทอรีราก

หมายเหตุ: เมื่ออักขระ "/" ปรากฏขึ้นก่อน หมายความว่าเส้นทางเริ่มต้นจากไดเร็กทอรีราก

"/page.html"

" /cat1/cat2/car.png "

เส้นทางอาจเป็นแบบสัมบูรณ์หรือแบบสัมพัทธ์ก็ได้

เส้นทางที่แน่นอนมักจะใช้เพื่อระบุเส้นทางไปยังไฟล์ที่อยู่บนทรัพยากรเครือข่ายอื่น เป็น URL แบบเต็มของไฟล์หรือเพจ ก่อนอื่น ที่อยู่จะระบุถึงโปรโตคอลที่ใช้ ตามด้วยชื่อโดเมน (ชื่อเว็บไซต์) ตัวอย่างเช่น: http://www.primer.ru - นี่คือลักษณะของเส้นทางที่แน่นอนไปยังเว็บไซต์หนึ่งๆ http:// เป็นโปรโตคอลการถ่ายโอนข้อมูล และ www.primer.ru เป็นชื่อของไซต์ (โดเมน)

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

ทีนี้เรามาดูกันดีกว่าว่ามันคืออะไร URL-ที่อยู่. แต่ละหน้าเว็บบนอินเทอร์เน็ตมีที่อยู่เฉพาะของตัวเองซึ่งเรียกว่า URL คำย่อ URLย่อมาจาก คุณนิฟอร์ม ทรัพยากร ocator (ที่อยู่ทรัพยากรแบบเดียวกัน) พูดง่ายๆ คือ URL เป็นตัวระบุตำแหน่งของทรัพยากร วิธีการเขียนที่อยู่นี้เป็นมาตรฐานบนอินเทอร์เน็ต


ไซต์ของคุณมีอยู่สองมิติเหมือนเดิม
จริงและเสมือน

สำหรับผู้เยี่ยมชมทุกคน นี่คือเว็บเซิร์ฟเวอร์เสมือน ซึ่งแตกต่างเหนือสิ่งอื่นใดตรงที่ไม่มีไฟล์อยู่ ถ้าคุณเขียน %20" target="_blank">http://site.ru/file.html- นี่ไม่ใช่ไฟล์ นี่คือ URI ซึ่งเป็นที่อยู่เสมือน อาจไม่มีไฟล์ชื่อ file.html บนเซิร์ฟเวอร์เลย ทั้งหมดนี้เป็นที่อยู่เสมือน ไม่ใช่ไฟล์
และเบราว์เซอร์ใช้งานได้กับที่อยู่โดยเฉพาะ

สำหรับนักพัฒนา เว็บไซต์คือโปรแกรมที่ทำงานบนคอมพิวเตอร์จริงที่มีความเฉพาะเจาะจงมาก ด้วยฮาร์ดไดรฟ์ ไดเร็กทอรี และไฟล์ที่เฉพาะเจาะจงมาก และสคริปต์ที่ทำงานกับข้อมูล โหลดสคริปต์อื่น ใช้งานได้กับไฟล์จริงบนดิสก์จริง

ความแตกต่างนี้คือความยากลำบากที่ผู้เริ่มต้นมักเผชิญอยู่
พวกเขาสูญเสียไฟล์ สร้างความสับสนให้กับลิงก์กับไฟล์ เข้าถึงไฟล์ในเครื่องผ่าน HTTP หรือรวมไฟล์จากรูทของเว็บเซิร์ฟเวอร์

แต่คุณเพียงแค่ต้องเข้าใจสองสิ่งอย่างชัดเจน:
1. แยกความแตกต่างระหว่างรูทของเว็บเซิร์ฟเวอร์ตามที่เบราว์เซอร์เห็นและรูทของระบบไฟล์บนดิสก์
2. ความแตกต่างระหว่างเส้นทางสัมพัทธ์และเส้นทางสัมบูรณ์

เริ่มจากอันที่สองกันก่อน
อะไรคือความแตกต่างระหว่างเส้นทางสัมบูรณ์และเส้นทางสัมพัทธ์?
ตัวอย่างของเส้นทางที่แน่นอน:
/var/www/site/forum/index.php
/img/frame.gif
จาก:\windows\command.com

ในระบบ Unix และบนเว็บไซต์ รากจะแสดงด้วยเครื่องหมายทับ - "/"
นี่เป็นสิ่งสำคัญ นี่ไม่ใช่แค่แท่งไม้ แต่เป็น ADDRESS ที่เป็นอิสระและเป็นเส้นทาง
ในที่อยู่ %20" target="_blank">http://www.site.ru/ฟันครั้งสุดท้ายไม่ใช่เพื่อความสวยงาม! หมายถึงที่อยู่ที่เฉพาะเจาะจงมาก - จุดเริ่มต้นของไซต์
บนดิสก์ในระบบ Unix คุณสามารถพิมพ์ "cd /" แล้วคุณจะถูกนำไปที่ไดเร็กทอรีราก
ในระบบ Windows ระบบไฟล์จะถูกแบ่งออกเป็นดิสก์ ดังนั้นที่อยู่ที่แน่นอนจะต้องระบุชื่อดิสก์ ไม่มีรูทที่แน่นอนของระบบไฟล์ทั้งหมดใน Windows แต่ละดิสก์จะมีของตัวเอง ตัวอย่างเช่น C:\ E:\
ดังนั้นแม้ว่าเส้นทางใน Windows จะเริ่มต้นด้วยเครื่องหมายทับ แต่ก็ไม่ใช่เส้นทางที่แน่นอน แต่เป็นเส้นทางที่สัมพันธ์กัน สัมพันธ์กับดิสก์ปัจจุบัน และสัมบูรณ์ขึ้นต้นด้วยตัวอักษร

หากไม่ได้ระบุรูทที่จุดเริ่มต้นของเส้นทาง เส้นทางนี้จะสัมพันธ์กันและได้มาจากตำแหน่งปัจจุบัน ในชีวิตจริงก็เหมือนกับถนนไปร้านเหล้า "ไปทางซ้าย 2 ช่วงตึกและตรงไปตลอด" เส้นทางนี้สามารถเข้าถึงได้จากจุดเฉพาะเท่านั้น จากที่อื่นคุณจะพบกับสถานที่ที่แตกต่างไปจากเดิมอย่างสิ้นเชิง
ตัวอย่างที่ง่ายที่สุดของเส้นทางสัมพัทธ์คือชื่อไฟล์
หากไฟล์อยู่ในไดเร็กทอรีเดียวกับที่โปรแกรมใช้งานอยู่ ไฟล์นั้นจะค้นหาได้โดยเพิ่มพาธปัจจุบันให้กับชื่อไฟล์
ตัวอย่างของเส้นทางสัมพัทธ์:
file.php (ไฟล์อยู่ในโฟลเดอร์เดียวกัน)
./file.php (ไฟล์อยู่ในโฟลเดอร์เดียวกัน บางครั้งจำเป็นต้องมีรายการดังกล่าวในระบบ Unix บางระบบ)
images/picture.jpg (ไฟล์อยู่ในโฟลเดอร์รูปภาพซึ่งอยู่ในโฟลเดอร์ปัจจุบัน)
../file.php (ไฟล์อยู่ในโฟลเดอร์ที่อยู่เหนือระดับปัจจุบันหนึ่งระดับ)
../../file.php (ไฟล์อยู่ในโฟลเดอร์ที่อยู่เหนือระดับปัจจุบันสองระดับ)

ทั้งระบบปฏิบัติการและเบราว์เซอร์ เมื่อพบเส้นทางสัมพัทธ์ ให้สร้างเส้นทางดังกล่าวเป็นเส้นทางที่แน่นอน แต่คนละทางกัน

ตอนนี้เรามาดูประเด็นแรกกันดีกว่า
ความแตกต่างระหว่างรูทของเว็บเซิร์ฟเวอร์ ตามที่เบราว์เซอร์เห็น กับรูทของระบบไฟล์บนดิสก์
โดยทั่วไปทุกอย่างควรชัดเจนจากคำอธิบายก่อนหน้านี้
บนดิสก์ เส้นทางไปยังไฟล์สคริปต์อาจเป็นดังนี้:
/var/www/site/forum/index.php
ในเวลาเดียวกัน ที่อยู่เสมือนของสคริปต์นี้เมื่อดูผ่านเบราว์เซอร์จะเป็น:
%20" target="_blank">http://www.site.ru/forum/index.php
ในตัวอย่างนี้ เป็นเรื่องง่ายที่จะเห็นว่าสองมิติตัดกันตรงจุดใด: ที่อยู่ทั้งสองมีส่วนที่เหมือนกัน - /forum/index.php - และนี่คือสาเหตุของความสับสน
สำหรับเบราว์เซอร์ นี่เป็นเส้นทางที่สมบูรณ์ที่สุด มันเริ่มต้นจากรากของเว็บไซต์
สำหรับสคริปต์ที่ทำงานบนเซิร์ฟเวอร์ นี่เป็นเพียงส่วนหนึ่งของเส้นทาง
สำหรับสคริปต์ เส้นทาง /forum/index.php จะไม่มีอยู่ - ไม่มีไดเร็กทอรีฟอรัมในรูทของดิสก์!
เพื่อให้ได้เส้นทางแบบเต็มสำหรับสิ่งที่ดูเหมือน /forum/index.php บนเว็บไซต์ คุณต้องเพิ่มเส้นทางด้านซ้ายไปยังโฟลเดอร์ที่ถือว่าเป็นรูทสำหรับเว็บเซิร์ฟเวอร์ทั้งหมด
ในตัวอย่างของเราก็คือ
/var/www/site
เส้นทางนี้ตั้งค่าไว้ในการกำหนดค่าเว็บเซิร์ฟเวอร์และมีอยู่ในตัวแปรระบบ PHP $_SERVER["DOCUMENT_ROOT"]

ในเซิร์ฟเวอร์เสมือน - เซิร์ฟเวอร์ที่ผู้ใช้เห็น - ตรงกันข้ามไม่มีดิสก์ มีรูทของไซต์ นั่นคือเพื่อรับประกันว่าลิงก์ใด ๆ จะใช้งานได้ไม่ว่าจะเรียกจากที่ใดบนไซต์ก็ตามลิงก์นั้นจะต้องสมบูรณ์
หากคุณมีสองส่วนในเว็บไซต์ของคุณ:
%20" target="_blank">http://www.site.ru/about/info.php
และ
%20" target="_blank">http://www.site.ru/job/vacancy.php
จากนั้นหากคุณสร้างลิงก์ในไฟล์ info.php เพียงไปที่ vacancy.php เบราว์เซอร์จะไม่พบมัน - มันจะค้นหาที่อยู่ %20," target="_blank">http://www.site.ru/about/vacancy.phpกรอกเส้นทางจากไดเร็กทอรีปัจจุบัน
ดังนั้นคุณต้องเขียนเส้นทางแบบเต็มจากรากของไซต์ - /job/vacancy.php
แน่นอนว่าทั้งหมดนี้ไม่เพียงแต่ใช้กับแท็กเท่านั้น
แต่ยัง และอื่นๆ ที่ใช้ลิงก์ไปยังไฟล์อื่น

ควรเขียนลิงก์ไปยังที่อยู่ในท้องถิ่นโดยไม่ระบุโปรโตคอลและโดเมน - เฉพาะเส้นทางจากรูทของไซต์ - /job/vacancy.php ลิงค์ไปยังเว็บไซต์อื่นควรเขียนให้ครบถ้วน - %20" target="_blank">http://www.site1.ru/job/vacancy.php .

PHP มีเครื่องมือมากมายสำหรับการทำงานกับไฟล์ ไดเร็กทอรี และ URL

ค่าคงที่ __FILE__ มีชื่อของไฟล์ปฏิบัติการปัจจุบัน
ต่างจาก PHP_SELF ตรงที่มีชื่อของไฟล์ที่กำลังดำเนินการอยู่
การออกแบบดูมีประโยชน์มาก ชื่อนามสกุล(__FILE__)ซึ่งขอแนะนำให้แทนที่การเรียกทั้งหมดไปยังไฟล์ที่อยู่ในไดเร็กทอรีเดียวกันกับสคริปต์การโทร ตัวอย่างเช่น:
ต้องการ dirname(__FILE__) "/init.php"
ฟังก์ชัน dirname() พร้อมด้วย basename() เป็นหนึ่งในฟังก์ชันที่ใช้บ่อยที่สุดสำหรับการทำงานกับไฟล์และไดเร็กทอรี

บันทึก:
หากคุณมีปัญหากับเส้นทางเมื่อถ่ายโอนสคริปต์จาก Windows ไปยังระบบ Unix ก่อนอื่นให้ใส่ใจกับตัวอักษร บนเซิร์ฟเวอร์ Unix ตัวอักษรในชื่อไฟล์มีความสำคัญ File.txt และ file.txt เป็นไฟล์สองไฟล์ที่แตกต่างกัน แต่สำหรับ Windows ไฟล์เหล่านี้จะเหมือนกัน วิธีที่ดีที่สุดคือเขียนชื่อไฟล์ให้ตรงกันเสมอๆ โดยคำนึงถึงกรณีและปัญหา

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

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

เนื่องจากฉันอุทิศเวลาส่วนใหญ่ให้กับเทคโนโลยีเว็บ ฉันจะยกตัวอย่างที่เกี่ยวข้องกับการสร้างเว็บไซต์

เส้นทางอาจเป็นแบบสัมบูรณ์หรือแบบสัมพัทธ์ก็ได้

เมื่อลิงก์เป็น URL แบบเต็มของไฟล์หรือเพจ ลิงก์นั้นจะเป็นเช่นนั้น เส้นทางที่แน่นอน- ในกรณีนี้ ต้องมีโปรโตคอลที่ใช้อยู่ในที่อยู่ ตัวอย่างเช่น, http://www.siteเป็นเส้นทางที่แน่นอนไปยังเว็บไซต์ใดเว็บไซต์หนึ่ง ในกรณีนี้คือเส้นทางที่แน่นอนไปยังหน้าหลักของบล็อกของฉัน โปรโตคอลอยู่ที่ไหน http, ก www.เว็บไซต์โดเมน(ชื่อ)

หากคุณระบุลิงค์ไปยังไดเร็กทอรีเป็นต้น http://yourdomain.ua/web/จากนั้นไฟล์ดัชนีจะถูกโหลด (แสดง) กฎนี้ใช้กับไซต์แบบคงที่เป็นหลัก เพราะเมื่อใช้ภาษาการเขียนโปรแกรมคุณสามารถสร้างเส้นทางภายในได้ ไฟล์ดัชนีโดยปกติจะเป็นไฟล์ชื่อ index.php,index.html,index.phtml,index.shtml- ในการใช้ไฟล์ดัชนีอื่น คุณต้องสร้างไฟล์ชื่อ .htaccess ในไดเร็กทอรีที่ต้องการ และเขียนคำสั่งลงไป การแก้ไขและสร้างไฟล์ .htaccess รวมถึงการกำหนดเส้นทางโดยใช้ภาษาการเขียนโปรแกรม อยู่นอกเหนือขอบเขตของบทความนี้

โดยพื้นฐานแล้ว เส้นทางที่แน่นอนจะใช้เมื่อคุณต้องการลิงก์ไปยังไซต์อื่น กล่าวอีกนัยหนึ่ง หากคุณต้องการส่งผู้เข้าชมไปยังไซต์อื่น คุณต้องใช้เส้นทางที่แน่นอน แม้ว่าเส้นทางนี้สามารถใช้กับเว็บไซต์ของคุณเองได้ แต่หลายคนเชื่อว่าลิงก์ภายในไซต์ควรมีความเกี่ยวข้องกัน
การใช้เส้นทางที่แน่นอนอาจทำให้เกิดปัญหาบางอย่างได้ ตัวอย่างเช่น เมื่อถ่ายโอนไซต์จากเครื่องท้องถิ่นไปยังเซิร์ฟเวอร์ (เป็นกรณีนี้หากคุณใช้ที่อยู่ในรูปแบบ http://localhost/sitename.ua/… บนเครื่องท้องถิ่น) ปัญหาอาจเกิดขึ้นเมื่อมีความจำเป็นต้องเปลี่ยนโดเมน (ชื่อเว็บไซต์) แม้ว่าปัญหาเหล่านี้จะสามารถแก้ไขได้ แต่คุณจะต้องใช้เวลากับมันบ้าง
เมื่อมีข้อเสียก็ต้องมีข้อดี ยกตัวอย่างสถานการณ์เช่นเนื้อหาถูกขโมยจากเว็บไซต์ของคุณ ในทางปฏิบัติ ฉันเชื่อมั่นมากกว่าหนึ่งครั้งว่าข้อความทั้งหมดถูกขโมย โดยไม่ทิ้งลิงก์ย้อนกลับไปยังต้นฉบับ ดังนั้นเมื่อใช้เส้นทางที่แน่นอน คุณจะได้รับลิงก์ย้อนกลับจากไซต์ที่มีเนื้อหาที่ถูกขโมยอยู่ แต่นี่เป็นเพียงในกรณีที่การเชื่อมโยงภายในของคุณดำเนินการโดยใช้เส้นทางที่แน่นอน แม้ว่าจะไม่ได้ผลเสมอไป แต่ฉันสังเกตเห็นลิงก์จากเว็บไซต์ของผู้อื่นที่มีเนื้อหาของฉันปรากฏมากกว่าหนึ่งครั้ง

ขุดหัวข้อเล็กน้อยฉันต้องการพูดสั้น ๆ เกี่ยวกับเรื่องนี้ URL คืออะไร.

แต่ละหน้าเว็บหรือเอกสารบนอินเทอร์เน็ตมีที่อยู่เฉพาะของตัวเองซึ่งเรียกว่า URL.
URL— ตัวระบุตำแหน่งแบบเดียวกัน (ตัวระบุตำแหน่ง) ​​ของทรัพยากร URL ย่อมาจาก Uniform Resource Locator คุณยังสามารถเจอการถอดรหัสเช่น Universal Resource Locator (ตัวระบุทรัพยากรสากล) วิธีการเขียนที่อยู่นี้เป็นมาตรฐานบนอินเทอร์เน็ต ระบบการระบุทรัพยากร URI ที่กว้างและกว้างมากขึ้นกำลังค่อยๆ แทนที่คำว่า URL
ยูอาร์ไอเป็นสตริงอักขระที่ระบุทรัพยากร เช่น เอกสาร ไฟล์ ฯลฯ แน่นอนว่านี่หมายถึงแหล่งข้อมูลทางอินเทอร์เน็ต

เส้นทางที่แน่นอนไปยังไฟล์

บ่อยครั้งที่มีการใช้เส้นทางสัมพัทธ์บ่อยกว่าเส้นทางสัมบูรณ์ โดยพื้นฐานแล้ว เส้นทางสัมพัทธ์จะถูกระบุเมื่อคุณต้องการส่งผู้เข้าชมไปยังหน้าอื่นในไซต์ของคุณ หรือแทรกวัตถุ (เช่น รูปภาพ) ลงในหน้าใดหน้าหนึ่ง ในกรณีนี้ การใช้สัมพันธ์กับเส้นทางค่อนข้างสมเหตุสมผล ขึ้นอยู่กับโครงสร้างของไซต์นั้นขึ้นอยู่กับรูปแบบของเส้นทางสัมพัทธ์ที่คุณต้องการใช้ เส้นทางสัมพัทธ์มีสองประเภท: เส้นทางที่สัมพันธ์กับเอกสาร เส้นทางที่สัมพันธ์กับรูทของไซต์

เส้นทางสัมพันธ์กับเอกสาร

อย่างแน่นอน เส้นทางสัมพันธ์กับเอกสารถูกใช้บ่อยที่สุด ลิงก์ดังกล่าวเรียกอีกอย่างว่าลิงก์ท้องถิ่น โดยทั่วไป เส้นทางนี้จะใช้เมื่อเอกสารปัจจุบันและเอกสารที่เกี่ยวข้อง (หน้า) อยู่ในไดเร็กทอรีเดียวกัน หากคุณย้ายเอกสารไปยังไดเร็กทอรีอื่น เส้นทาง (ลิงก์) จะต้องมีการเปลี่ยนแปลง แม้ว่าคุณจะสามารถลิงก์ไปยังเอกสาร (หน้า) จากไดเร็กทอรีอื่นได้ เมื่อต้องการทำเช่นนี้ เส้นทางจะถูกเขียนจากเอกสารปัจจุบันไปยังเอกสารเป้าหมาย (เพจ) ในกรณีนี้ จะต้องตั้งค่าเส้นทางที่เกี่ยวข้องกับเอกสารโดยขึ้นอยู่กับโครงสร้างไดเร็กทอรี
ยกตัวอย่างโครงสร้างที่ง่ายที่สุดของเว็บไซต์แบบคงที่

สมมติว่าทุกภาพในไดเร็กทอรี ภาพจำเป็นต้องแทรกลงในหน้าที่เหมาะสม หน้าแรก.html, ผลิตภัณฑ์.html, ติดต่อ.htmล. ตัวอย่างเช่น ในการแทรกรูปภาพลงในหน้า "home.html" คุณต้องระบุเส้นทางที่รูปภาพนั้นอยู่ หากคุณใช้เส้นทางที่สัมพันธ์กับเอกสาร คุณจะต้องเขียนสิ่งต่อไปนี้ในโค้ดเพจ:

รหัสสำหรับแทรกรูปภาพบนเพจนี้ไม่สมบูรณ์ เนื่องจากไม่มีคุณลักษณะที่สำคัญหลายประการ เช่น ความกว้าง ความสูง เป็นต้น คุณลักษณะ srcที่นี่ทำหน้าที่ระบุเส้นทางไปยังไฟล์ คุณลักษณะอื่นๆ ทั้งหมดจะถูกละไว้ที่นี่ เนื่องจากไม่ได้มีความสำคัญในขณะนี้ สิ่งสำคัญในตอนนี้คือคุณมีความคิดว่าเส้นทางนั้นสัมพันธ์กับเอกสารอย่างไร
เมื่อใช้เส้นทางที่สัมพันธ์กับเอกสาร ส่วนเส้นทางที่แน่นอนจะหายไป ส่วนหนึ่งของเส้นทางสัมบูรณ์ถูกตัดทอนที่นี่ ทั้งสำหรับเอกสารปัจจุบัน (หน้า) และสำหรับเอกสารที่เชื่อมโยง ที่นี่ใช้เฉพาะส่วนหนึ่งของเส้นทางที่เปลี่ยนแปลงอยู่เสมอ
ฉันขอเตือนคุณอีกครั้งว่าเมื่อใช้เส้นทางที่สัมพันธ์กับเอกสาร คุณจะต้องคำนึงถึงตำแหน่งดั้งเดิมของไฟล์ด้วย

ลองจินตนาการถึงสถานการณ์ที่เพจ ผลิตภัณฑ์.htmlจะไม่ได้อยู่ในไดเร็กทอรีรากของไซต์ (เช่นในกรณีตัวอย่างก่อนหน้านี้) แต่จะอยู่ในไดเร็กทอรีย่อย ตอนนี้คุณต้องแทรกรูปภาพลงในไฟล์ ผลิตภัณฑ์.htmlซึ่งอยู่ลึกกว่าไดเร็กทอรีรากของไซต์

เพื่อแทรกรูปภาพลงในไฟล์ ผลิตภัณฑ์.htmlคุณต้องกลับไปที่ไดเร็กทอรีราก หลังจากนั้นคุณสามารถใช้เส้นทางที่ทราบแล้วตามที่กล่าวไว้ข้างต้น

ดังที่คุณเห็นจากโค้ดด้านบน ตอนนี้ได้เพิ่มสิ่งต่อไปนี้ในเส้นทางแล้ว: ../ - ลำดับตัวละครเพียงเท่านี้ ../ และทำหน้าที่ย้ายหนึ่งไดเร็กทอรี (ระดับ) ที่สูงขึ้นในลำดับชั้นไดเร็กทอรี เส้นทางในโค้ดด้านบนสามารถอ่านได้ดังนี้: “ไปหนึ่งไดเร็กทอรีที่สูงกว่า (ด้านหลัง) ไปที่ไดเร็กทอรี ภาพและนำไฟล์มาจากที่นั่น สินค้า.png«.
ถ้า ../ หมายถึงการย้ายหนึ่งไดเร็กทอรี (ระดับ) ที่สูงขึ้นในลำดับชั้นไดเร็กทอรี จากนั้นจึงย้ายสัญลักษณ์ / แสดงว่าเลื่อนลงหนึ่งระดับ
ลำดับอักขระ ../ สามารถใช้ซ้ำได้ในระหว่างการเดินทาง เช่นถ้าเป็นไฟล์ ผลิตภัณฑ์.htmlย้ายไปยังไดเร็กทอรีที่ซ้อนกันสามไดเร็กทอรี คุณจะต้องใช้โค้ดต่อไปนี้:

ดังที่เห็นได้จากตัวอย่างก่อนหน้านี้โดยใช้ เส้นทางที่เกี่ยวข้องกับเอกสารในหลายกรณีก็สมเหตุสมผล เส้นทางประเภทนี้มักใช้ในทางปฏิบัติและสามารถใช้ได้กับเกือบทุกสถานการณ์ ดังที่ฉันได้กล่าวไว้ข้างต้น ยังมีเส้นทางที่เกี่ยวข้องกับรากของไซต์ ซึ่งจะกล่าวถึงด้านล่างจริง ๆ

เส้นทางสัมพันธ์กับรูทของไซต์

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

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

เส้นทางสัมพัทธ์ของรูทไม่มีทั้งโปรโตคอล http หรือชื่อโดเมน และอย่างที่ผมบอกไปนั้นเริ่มด้วยการแสดงสัญลักษณ์ / ซึ่งชี้ไปยังไดเร็กทอรีราก ไฟล์ดัชนีหน้าหลักมักจะอยู่ในไดเร็กทอรีนี้

ตัวอย่างเช่น, /images/products.pngแสดงว่าไฟล์ สินค้า.pngอยู่ในโฟลเดอร์ ภาพซึ่งอยู่ในไดเรกทอรีราก

วิธีที่ง่ายที่สุดในการกำหนดเส้นทางสัมพัทธ์ของรูทคือการใช้เส้นทางสัมบูรณ์และละทิ้ง http:// และชื่อโฮสต์

ตัวอย่าง
บางครั้งจำเป็นที่หน้าอื่น ๆ บนเว็บไซต์จะใช้ข้อมูลจากหน้าหนึ่ง ซึ่งมักทำเพื่อลดจำนวนโค้ดที่ซ้ำกันในแต่ละหน้า สมมุติว่ามีไฟล์ _contact.htmlซึ่งมีข้อมูลเกี่ยวกับหมายเลขโทรศัพท์ อีเมล และมีรูปภาพ ติดต่อ.png- (ให้มันเป็นตารางเล็กๆที่จะวางอยู่ในแต่ละหน้าของเว็บไซต์)

รหัสต่อไปนี้ใช้สำหรับการแทรกรูปภาพ "contact.png"

รหัสที่จำเป็นในการแทรกไฟล์หนึ่งไปยังอีกไฟล์หนึ่งอยู่นอกเหนือขอบเขตของบทความนี้ ทุกอย่างขึ้นอยู่กับภาษาการเขียนโปรแกรมที่ใช้

ฉันหวังว่าคุณจะรู้อยู่แล้วว่ามีการใช้เส้นทางประเภทใดในโค้ดด้านบน ถ้าไม่เช่นนั้น ให้ดูที่คำจำกัดความเส้นทางที่เกี่ยวข้องกับเอกสารด้านบน
ตอนนี้เมื่อมีผู้เยี่ยมชมเยี่ยมชมหน้าเว็บไซต์เช่น หน้าแรก.html, ติดต่อ.ntmlเขาจะเห็นหน้าที่แสดงผลอย่างสมบูรณ์แบบ โดยในแต่ละไฟล์จะถูกแทรกเข้าไป _contact.htmlซึ่งในทางกลับกันก็มีการแทรกรูปภาพเข้าไป ติดต่อ.png.
กล่าวอีกนัยหนึ่งโดยไปที่หน้าเช่น หน้าแรก.htmlสิ่งต่อไปนี้เกิดขึ้น: “โค้ดของหน้าหลักกำลังทำงานอยู่ หน้าแรก.html- จากนั้นโค้ดของเพจจะถูกแทรกและดำเนินการ _contact.html- รหัสเพจ _contact.htmlบอกว่าคุณต้องไปที่ไดเร็กทอรี ภาพและนำภาพจากที่นั่น ติดต่อ.png«.
หากคุณละเว้นโค้ดที่ฝังไว้ ทุกอย่างจะทำงานได้ดี แต่ถ้าคุณรันเพจ ผลิตภัณฑ์.htmlแล้วจะเกิดข้อผิดพลาดขึ้น เนื่องจากโค้ดจะพยายามค้นหาไดเร็กทอรี ภาพและไฟล์ ติดต่อ.pngในไดเร็กทอรี สินค้า- แต่ไม่มีไดเร็กทอรีดังกล่าว ซึ่งเป็นจุดที่ปัญหาเกิดขึ้นจริง
เห็นได้ชัดว่าคุณไม่สามารถใช้เส้นทางที่สัมพันธ์กับเอกสารได้ที่นี่
แน่นอน คุณสามารถใช้เส้นทางที่แน่นอนได้ที่นี่ ฉันพูดถึงข้อดีข้อเสียของแนวทางนี้ข้างต้น
โดยทั่วไป นี่เป็นสถานการณ์หนึ่งที่คุณควรใช้เส้นทางที่สัมพันธ์กับรูทของไซต์ เมื่อใช้พาธที่สัมพันธ์กับรูทของไซต์ ลิงก์จะเริ่มต้นจากไดเร็กทอรีราก (รูทของไซต์) เสมอ เส้นทางประเภทนี้จะอนุญาตให้คุณใช้โค้ดเพื่อแทรก เช่น รูปภาพ โดยไม่คำนึงถึงลำดับชั้นของไซต์และไดเร็กทอรีของไซต์
การใช้เส้นทางที่สัมพันธ์กับรูทของไซต์ในตัวอย่างด้านบนจะช่วยหลีกเลี่ยงปัญหาในการแทรกรูปภาพ เพราะไม่ว่าจะใช้พาธประเภทนี้ที่ไหนก็จะค้นหาไฟล์ที่ระบุอยู่ในนั้นเสมอ
เส้นทางที่สัมพันธ์กับรูทของไซต์นั้นคล้ายกับเส้นทางที่สัมพันธ์กับเอกสารมาก ในการสร้างเส้นทางที่สัมพันธ์กับรูทของไซต์ คุณต้องเพิ่มสัญลักษณ์ / สู่จุดเริ่มต้นของการเดินทาง

ตอนนี้รูปภาพจะถูกแทรกอย่างถูกต้องบนหน้าใด ๆ ของไซต์

ฉันหวังว่าฉันจะช่วยคุณได้เล็กน้อยเพื่อทำความเข้าใจว่ามีเส้นทางใดบ้าง และจะใช้เมื่อใดและที่ไหน ตอนนี้คุณสามารถใช้เส้นทางทุกประเภทตามวัตถุประสงค์ที่ต้องการได้