ฉันมีการตั้งค่าของแอปพลิเคชัน PHP ที่กำลังรับฟังในหลายโฮสต์ เช่น:
maindomain.com
a.maindomain.com
ข.maindomain.com
ต้องเปลี่ยนเส้นทางบางเส้นทางใน maindomain.com สำหรับสิ่งนั้น ฉันกำหนดค่าเวลาเปลี่ยนเส้นทางนี้แล้ว:
เขียนใหม่ ^/myroute/(.*)$ http://$server_name/new-myroute/$1 ถาวร;
ซึ่งทำให้คำขอทั้งหมดไปยัง maindomain.com/myroute/ เปลี่ยนเส้นทางไปยัง maindomain.com/new-myroute
ประเด็นคือการเปลี่ยนเส้นทางนี้ยังใช้กับโดเมนย่อยที่เหลือ ทำให้ a.maindomain.com/myroute เปลี่ยนเส้นทางไปที่ maindomain.com/new-myroute
ฉันต้องการยกเว้นโดเมนย่อยเหล่านี้จากการใช้การเปลี่ยนเส้นทางนั้น โดยปล่อยให้ประเภทเส้นทาง a.maindomain.com/myroute ไม่ถูกแตะต้อง
ฉันได้ลองเขียนใหม่หลายครั้งแล้ว เช่น
เขียนใหม่ ^https://maindomain.com/myroute/(.*)$ http://$server_name/new-myroute/$1 ถาวร;
เขียนใหม่ ^maindomain.com/myroute/(.*)$ http://$server_name/new-myroute/$1 ถาวร;
เขียนใหม่ maindomain.com/myroute/(.*)$ http://$server_name/new-myroute/$1 ถาวร;
แต่ไม่มีใครทำงาน
มีแนวคิดเกี่ยวกับวิธีใช้การเปลี่ยนเส้นทางเฉพาะกับโดเมนหลักหรือไม่ ขอบคุณ.
แก้ไข: ชื่อเซิร์ฟเวอร์มีไวด์การ์ด รับฟังโดเมนย่อยทั้งหมดที่เป็นไปได้:
ชื่อเซิร์ฟเวอร์ maindomain.com *.maindomain.com;