ฉันมี Python/Django API พร้อมจุดสิ้นสุดที่ไม่เหมือนใคร /วิดีโอ ทำงานบนเซิร์ฟเวอร์ Debian ของฉัน
Nginx vhost มีลักษณะดังนี้:
เซิร์ฟเวอร์ {
    server_name example.com;
    ที่ตั้ง / {
        # ผ่านไปยังบริการเว็บเซิร์ฟเวอร์ Uvicorn/Gunicorn
        proxy_pass http://upstream_name/;
        proxy_set_header โฮสต์ $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
    ฟัง 443 ssl; # จัดการโดย Certbot
    ssl_certificate /path_to/fullchain.pem; # จัดการโดย Certbot
    ssl_certificate_key /path_to/privkey.pem; # จัดการโดย Certbot
    รวม /etc/letsencrypt/options-ssl-nginx.conf; # จัดการโดย Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # จัดการโดย Certbot
}
ต้นน้ำ upstream_name {
    เซิร์ฟเวอร์ 127.0.0.1:8002;
}
ดังนั้นจึงให้บริการแอปและจุดสิ้นสุดที่ไม่เหมือนใครได้สำเร็จ https://example.com/videos.
ตอนนี้ฉันต้องการให้บริการแอพบน https://example.com/my_app/videosเพื่อให้มีแอปอื่นๆ ที่ให้บริการบนโดเมน/vhost เดียวกันในอนาคต (โดยมีพอร์ตภายในต่างกัน และอัพสตรีมต่างกันใน vhost)
ฉันได้อ่านคำถาม/คำตอบที่คล้ายกันหลายข้อบน ServerFault และพยายามเปลี่ยนแปลงแล้ว ที่ตั้ง / ถึง ตำแหน่ง /my_appขณะที่ลองใช้การกำหนดค่าเครื่องหมายทับต่อท้ายแบบต่างๆ ที่ตั้ง และ proxy_passโดยไม่ประสบความสำเร็จ ฉันพลาดอะไรไปที่นี่?
แก้ไข: แม่นยำยิ่งขึ้น:
- ด้วยการเปลี่ยน vhost เป็น - ที่ตั้ง/myapp->- https://example.com/my_app/videosแสดงข้อผิดพลาดไม่พบ (ไม่ใช่จาก Nginx)
 
- ด้วยการเปลี่ยน vhost เป็น - ตำแหน่ง /my_app/->- https://example.com/my_app/videosได้รับการเปลี่ยนเส้นทางไปที่- https://example.com/videos/และแสดงข้อผิดพลาด 404 Not Found (จาก Nginx)