Nginx เขียนกฎใหม่เพื่อลบโหนดพา ธ


20

สมมติว่าผู้ใช้พยายามเข้าถึงภาพที่กำหนดในเว็บไซต์ของฉันโดยใช้ URL ต่อไปนี้: http://www.mywebsite.com/blog/image1.jpg?someParam=100

ฉันต้องการกฎการเขียนซ้ำเพื่อลบโหนด 'บล็อก' ออกจากเส้นทาง:

http://www.mywebsite.com/image1.jpg?someParam=100

คำตอบ:


27

ลองอันนี้:

location /blog {
 rewrite ^/blog(/.*)$ $1 last;
}

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


ใช้งานได้ในเซิร์ฟเวอร์เดียวกัน วิธีทำให้มันใช้งานได้สำหรับโดเมนอื่น
Autodidact

1
เพียงรวมโดเมนใหม่เป็นส่วนหนึ่งของการเขียนใหม่: rewrite ^/blog(/.*)$ https://blog.example.com$1 permanent;
Christophe
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.