Score:4

ให้ nginx เปลี่ยนเส้นทางทุกอย่างไปที่ https ยกเว้นไดเรกทอรีเดียว

ธง ru

ฉันต้องการ nginx เพื่อเปลี่ยนเส้นทาง http URL ทั้งหมดไปที่ https ยกเว้นไดเร็กทอรี ".secret/" ซึ่งควรทำหน้าที่เป็น http ต่อไป

ตัวอย่างเช่น:

  • http://example.com/a.html --> https://example.com/a.html
  • http://example.org/z/b.html --> https://example.org/z/b.html
  • http://example.com/.secret/x.html --> http://example.com/.secret/x.html

ฉันมีสิ่งต่อไปนี้ในการกำหนดค่า แต่สำหรับ http จะส่งคืนที่อยู่ที่มี "_"

เซิร์ฟเวอร์ {
    ฟัง 80;
 
    ชื่อเซิร์ฟเวอร์ _;
 
    ที่ตั้ง /.secret {
        ส่งคืน http://$server_name$request_uri;
    }
 
    ที่ตั้ง / {
        ส่งคืน 301 https://$server_name$request_uri;
    }
}

ผมทำอะไรผิดหรือเปล่า?

อัปเดต:

การรวมความคิดเห็นจาก @mforsetti และ @Pothi_Kalimuthu การทำงานต่อไปนี้:

เซิร์ฟเวอร์ {
    ฟัง 80;
 
    ชื่อเซิร์ฟเวอร์ _;
 
    ตำแหน่ง /.secret { }
 
    ที่ตั้ง / {
        ส่งคืน 301 https://$host$request_uri;
    }
}
sv flag
ยินดีต้อนรับสู่ ServerFault คุณสามารถปล่อยให้ตำแหน่ง `.secret` ว่างเปล่าสำหรับการตอบกลับที่ต้องการ เช่น `ตำแหน่ง /.secret {}`
Score:5
ธง tz

มันส่งคืนที่อยู่ที่มี "_"

ชื่อเซิร์ฟเวอร์ _;

ที่ตั้ง /.secret {
   ส่งคืน http://$server_name$request_uri;
}

$server_name กลับได้รับมอบหมาย ชื่อเซิร์ฟเวอร์ ไปที่ เซิร์ฟเวอร์ บล็อกซึ่งในกรณีของคุณคือ _; ด้วยเหตุนี้ _ ในที่อยู่ส่งคืน

หากคุณต้องการให้ส่งคืนชื่อโฮสต์หรือของคุณ เจ้าภาพ ส่วนหัวคำขอลองใช้ $โฮสต์, สิ่งที่ต้องการ:

ที่ตั้ง /.secret {
    ส่งคืน http://$host$request_uri;
}

.ความลับ/ ไดเร็กทอรีที่ควรทำหน้าที่เป็น http ต่อไป

หากคุณต้องการให้บริการไดเร็กทอรี ให้ระบุ a ราก ไดเรกทอรี

ที่ตั้ง /.secret {
    รูท /path/to/your/parent/of/secret/directory;
}

โพสต์คำตอบ

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