Score:1

บน Apache จะปิด DirectorySlash เฉพาะคำขอไปยังโดเมนย่อยที่ระบุได้อย่างไร

ธง cn

ให้บริการโดย Apache ฉันต้องการ หนึ่ง ไซต์โดเมนย่อยของฉัน (เช่น sub.mydomain.com) URL นั้น ปราศจาก เครื่องหมายทับต่อท้ายชี้โดยตรง (โดยไม่มีการเปลี่ยนเส้นทางภายนอก) ไปยังไฟล์ดัชนีในโฟลเดอร์ที่อยู่ด้านล่าง คำขอโดเมนย่อยถูกเปลี่ยนเส้นทางภายในไปยังโฟลเดอร์ย่อย URLS อื่นๆ ทั้งหมดควรทำงานตามปกติของ Apache โดยมีการเปลี่ยนเส้นทางภายนอกไปยังเวอร์ชันที่ทับ

คำสั่งทั้งหมดต้องไปอยู่ในไฟล์ .htaccess ของฉัน สำหรับการทำงานนี้ฉันวางแผนที่จะทำสิ่งต่อไปนี้:

  1. ปิดสวิตช์ ไดเรกทอรีสแลช สำหรับการร้องขอ sub.mydomain.com/...
  2. เขียนใหม่ sub.mydomain.com/⦠ขอให้ /ย่อย/...
  3. เขียน URL ไดเรกทอรีแบบไม่มีสแลชใหม่ด้วย /ย่อย/... เพื่อดึงข้อมูล index.html ภายในไดเร็กทอรีพื้นฐาน

ฉันมีความคิดที่ดีในการทำ 2. และ 3. แต่ฉันจะออกได้อย่างไร DirectorySlash ปิด สำหรับการร้องขอเท่านั้น sub.mydomain.comแต่ไม่ต้อง www.mydomain.com หรือ อื่นๆ.mydomain.com?

kz flag
อาจเกิดความสับสนว่าโดเมนย่อย `sub` ชี้ไปที่เดียวกับโดเมนหลักและโดเมนย่อยอื่นๆ ทั้งหมดหรือไม่
cn flag
@MrWhite คำขอไปยังส่วนย่อยถูกเปลี่ยนเส้นทางไปยังโฟลเดอร์ /sub ดังนั้นฉันต้องการเพียงปิด Directory slash สำหรับทุกอย่างในโฟลเดอร์นั้น มันสมเหตุสมผลไหม?
Score:1
ธง kz

ด้วยเสียงของมัน คุณ ย่อย โดเมนย่อยจับคู่กับไดเร็กทอรีเดียวกันกับโดเมนหลักและโดเมนย่อยอื่นๆ ทั้งหมด (www และ อื่นๆฯลฯ)

อย่างไรก็ตาม หากทุกคำขอไปยัง ย่อย โดเมนย่อยถูกเขียนใหม่เป็นการภายในไปยัง /sub ไดเร็กทอรีย่อย จากนั้นคุณสามารถสร้างใหม่ได้ .htaccess ที่ /sub/.htaccess ที่คุณตั้งไว้ DirectorySlash ปิด - จากนั้นนำไปใช้กับคำขอทั้งหมดไปยัง ย่อย โดเมนย่อย. (สมมติว่าคุณไม่ได้เข้าถึงไดเร็กทอรีย่อยเดียวกันผ่านชื่อโฮสต์อื่น คุณสามารถป้องกันสิ่งนี้ได้หากต้องการ)

เดอะ /sub/.htaccess ไฟล์ยังเป็นที่ที่คุณจะใช้งาน #3 ในข้อกำหนดของคุณ

ราก .htaccess ไฟล์เพียงแค่เขียนคำขอทั้งหมดไปยังไฟล์ ย่อย โดเมนย่อยของ /sub ไดเร็กทอรีย่อย


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

cn flag
มันได้ผล! อย่างที่คุณแนะนำ เคล็ดลับคือต้องมี `.htaccess` สำรองใน `/sub` สุดเจ๋ง!

โพสต์คำตอบ

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