นั่นไม่ใช่คำถามของสุนทรียภาพ แต่จริงๆแล้วเป็นความแตกต่างทางเทคนิค ความคิดไดเรกทอรีของมันถูกต้องทั้งหมดและอธิบายทุกอย่างสวย มาทำงานกันเถอะ:
คุณกลับมาอยู่ในยุคหินตอนนี้หรือให้บริการหน้าคงที่เท่านั้น
คุณมีโครงสร้างไดเรกทอรีคงที่บนเว็บเซิร์ฟเวอร์ของคุณและมีเพียงไฟล์แบบสแตติกเช่นรูปภาพ, html และอื่น ๆ - ไม่มีสคริปต์ด้านเซิร์ฟเวอร์หรืออะไรก็ตาม
คำขอของเบราว์เซอร์/index.htm
มีอยู่และส่งไปยังลูกค้า หลังจากนั้นคุณมีจำนวนมาก - สมมติว่า - ภาพยนตร์ดีวีดีได้รับการตรวจสอบและหน้า html สำหรับภาพยนตร์แต่ละเรื่องใน/dvd/
ไดเรกทอรี ตอนนี้มีคนร้องขอ/dvd/adams_apples.htm
และมีการส่งมอบเพราะมี
ในบางวันมีคนแค่ขอ/dvd/
- ซึ่งเป็นไดเรกทอรีและเซิร์ฟเวอร์พยายามที่จะคิดออกว่าจะส่งมอบ นอกจากข้อ จำกัด การเข้าถึงและอื่น ๆ มีสองเป็นไปได้: แสดงเนื้อหาของผู้ใช้ไดเรกทอรี (ฉันเดิมพันที่คุณมีอยู่แล้วได้เห็นที่ไหนสักแห่ง) หรือแสดงแฟ้มเริ่มต้น (ใน Apache คือ: DirectoryIndex: sets the file that Apache will serve if a directory is requested.
)
จนถึงตอนนี้เป็นกรณีที่คาดหวัง มันแสดงให้เห็นถึงความแตกต่างในการจัดการดังนั้นให้เข้าไป:
เวลา 5:34 น. คุณได้อัปโหลดไฟล์ของคุณผิดพลาด
(ซึ่งเป็นโดยวิธีการที่เข้าใจได้อย่างสมบูรณ์.) ดังนั้นคุณทำอะไรบางอย่างที่ไม่ถูกต้องอย่างสิ้นเชิงและแทนที่จะอัปโหลด/dvd/the_big_lebowski.htm
คุณอัปโหลดไฟล์ที่เป็นdvd
(ที่มีนามสกุลไม่ได้) /
ที่จะ
มีคนคั่น/dvd/
รายการไดเรกทอรีของคุณ(แน่นอนว่าคุณไม่ต้องการสร้างและอัปเดตที่ดีเสมอไปindex.htm
) และกำลังเยี่ยมชมเว็บไซต์ของคุณ มีการส่งเนื้อหาของสารบบ - ไม่เป็นไร
/dvd
ใครบางคนเคยได้ยินจากรายการของคุณและคือการพิมพ์ และตอนนี้มันก็เมา แทนที่จะแสดงไดเรกทอรีดีวีดีของคุณเซิร์ฟเวอร์จะค้นหาไฟล์ที่มีชื่อนั้นและส่งไฟล์ Big Lebowski ของคุณ
ดังนั้นคุณลบไฟล์นั้นแล้วบอกให้คนโหลดหน้านั้นใหม่ เซิร์ฟเวอร์ของคุณค้นหา/dvd
ไฟล์ แต่มันหายไป เซิร์ฟเวอร์ส่วนใหญ่จะสังเกตเห็นว่ามีไดเรกทอรีที่มีชื่อนั้นและแจ้งให้ลูกค้าทราบว่าสิ่งที่ต้องการคือที่อื่น คำตอบน่าจะเป็น:
Status Code:301 Moved Permanently
กับ Location: http://[...]/dvd/
ดังนั้นโดยไม่สนใจสิ่งที่คุณคิดเกี่ยวกับไดเรกทอรีหรือไฟล์เซิร์ฟเวอร์สามารถจัดการกับสิ่งเหล่านั้นได้และ - เว้นแต่จะได้รับการบอกกล่าวแตกต่างกัน - ตัดสินใจให้คุณเกี่ยวกับความหมายของ "เครื่องหมายทับหรือไม่"
ในที่สุดหลังจากได้รับการตอบสนองนี้ลูกค้าโหลด/dvd/
และทุกอย่างเรียบร้อย
ไม่เป็นไร เลขที่
"ไม่เป็นไร" ไม่ดีพอสำหรับคุณ
คุณมีหน้าเว็บไดนามิกที่ทุกอย่างผ่านไป/index.php
และรับการประมวลผล ทุกอย่างใช้งานได้ดีจนถึงทุกวันนี้ แต่ทุกอย่างเริ่มช้าลงและคุณตรวจสอบ
เร็ว ๆ นี้คุณจะสังเกตเห็นว่า/dvd/list
จะทำเหมือนกัน: การเปลี่ยนเส้นทางไปที่แล้วแปลลงในภายใน/dvd/list/
index.php?controller=dvd&action=list
อีกหนึ่งคำขอ - แต่ยิ่งแย่ไปกว่านั้น! customer/login
เปลี่ยนเส้นทางcustomer/login/
ซึ่งจะเปลี่ยนเส้นทางไปยัง HTTPS URL customer/login/
ของ คุณท้ายมีตันของการเปลี่ยนเส้นทาง HTTP ที่ไม่จำเป็น (= การร้องขอเพิ่มเติม) ที่ทำให้ประสบการณ์การใช้งานช้าลง
เป็นไปได้ว่าคุณมีดัชนีไดเรกทอรีเริ่มต้นที่นี่เช่นกันindex.php?controller=dvd
โดยไม่มีaction
การโหลดภายในเพียงอย่างindex.php?controller=dvd&action=list
เดียว
สรุป:
ถ้ามันจบลงด้วย/
จะไม่สามารถเป็นไฟล์ ไม่มีการคาดเดาเซิร์ฟเวอร์
เครื่องหมายทับหรือไม่มีเครื่องหมายทับมีความหมายที่แตกต่างกันอย่างสิ้นเชิง มีความแตกต่างด้านเทคนิค / ทรัพยากรระหว่าง "เครื่องหมายทับหรือไม่มีเครื่องหมายทับ" และคุณควรระวังและใช้ตามนั้น เพียงเพราะเซิร์ฟเวอร์มักโหลด/dvd/index.htm
- หรือโหลดสคริปต์ที่ถูกต้อง - เมื่อคุณพูดว่า/dvd
: ทำได้ แต่ไม่ใช่เพราะคุณทำตามคำขอที่ถูกต้อง /dvd/
ซึ่งจะได้รับ
การตัดเครื่องหมายทับแม้ว่าคุณจะหมายถึงเวอร์ชันที่ทับแล้วจะทำให้คุณได้รับคำร้องขอ HTTP เพิ่มเติม ซึ่งมักจะไม่ดี (คิดว่าเวลาแฝงบนอุปกรณ์เคลื่อนที่) และมีน้ำหนักมากกว่า "URL ที่น่ารัก" - โดยเฉพาะอย่างยิ่งเนื่องจากซอฟต์แวร์รวบรวมข้อมูลไม่ได้โง่อย่างที่ SEO เชื่อหรือต้องการให้คุณเชื่อ;)