Score:0

วิธีย้อนกลับชื่อส่วนขยายเฉพาะพร็อกซีด้วย Nginx

ธง cn

สมมติว่าฉันพยายามพร็อกซีคำขอทั้งหมดที่เข้ามาสำหรับไฟล์ jpg, png และ mp3 เช่น:

http://example.com/some/url/file.png

ถึง

http://example.net/data/some/url/file.png

สังเกตว่าเป็นเส้นทางเดียวกันไปยังเซิร์ฟเวอร์อื่น แต่มี ข้อมูล เพิ่ม

เธอคือสิ่งที่ฉันมี:

ตำแหน่ง ~* .(jpg|png|mp3)$ {
        proxy_pass https://example.net/data/;
        proxy_redirect https://example.net/data/ /
    }

อย่างไรก็ตาม ฉันยังคงได้รับข้อผิดพลาด

"proxy_pass" ไม่สามารถมีส่วน URI ในตำแหน่งที่กำหนดโดยนิพจน์ทั่วไป หรือภายในตำแหน่งที่มีชื่อ หรือภายในคำสั่ง "if" หรือภายในบล็อก "limit_except"

เกิดอะไรขึ้นและฉันจะเขียนบล็อกตำแหน่งนี้อย่างถูกต้องได้อย่างไร

Score:2
ธง gr

คุณต้องเปลี่ยน URI โดยใช้ เขียนใหม่ คำสั่งถ้าคุณต้องการส่ง URI อื่นไปยังแบ็กเอนด์ในบล็อกตำแหน่งที่ตรงกันของ regex (เช่นเดียวกันกับตำแหน่งที่ตั้งที่มีชื่อ):

ตำแหน่ง ~* \.(jpe?g|png|mp3)$ {
    เขียนใหม่ (.*) /data$1 ตัวแบ่ง;
    proxy_pass https://example.net;
    proxy_redirect https://example.net/data/ /
}
Shaunak avatar
cn flag
สมบูรณ์แบบ! ขอบคุณ

โพสต์คำตอบ

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