วิธีลบส่วนของ URL ใน Nginx อย่างรวดเร็วและง่ายดายด้วย HttpRewriteModule


33

ฉันรู้เกี่ยวกับHttpRewriteModuleแต่ฉันไม่รู้วิธีจัดการ regex และฉันจะต้องเปลี่ยนเส้นทาง URL ทั้งหมดภายในไดเรกทอรีหนึ่งไปยังอีกไดเรกทอรีหนึ่งโดยเฉพาะ

example.com/component/tag/whatever

ไปยัง

example.com/tag/whatever

บางคนบอกฉันได้ว่าจะทำอย่างไรใน Nginx

คำตอบ:


51

คุณหมายถึงสิ่งที่ชอบ:

rewrite ^/component(.*)$ $1 last;

ฉันคิดว่ามันจะทำมันขอบคุณมาก ฉันรู้สึกแย่ที่การแสดงออกปกติ; ฉันจะต้องพยายามเรียนรู้พวกเขา ...
javipas

regex101.com/r/qJ5gU1/1มีคำอธิบายทางด้านขวา
Jon

9
คุณอาจต้องแทนที่ครั้งสุดท้ายด้วยการหยุดพัก (สุดท้ายจะพยายามแก้ไขตำแหน่งอื่นหลังจากเขียนใหม่)
โทมัส Decaux

4
มันทำงานเฉพาะสำหรับผมด้วยและไม่ได้มีbreak last
Guillaume

@ThomasDecaux ความแตกต่างระหว่างการหยุดพักและครั้งสุดท้าย
อะไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.