422a143685
- Add location blocks for API endpoints to redirect to CMS (port 3001) - Keep frontend pages on Next.js (port 3000) - Handle /auth/login specially: GET->frontend, POST->CMS API - Add maps for detecting API routes Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
193 lines
6.0 KiB
Plaintext
193 lines
6.0 KiB
Plaintext
# CMS API routes - redirect to CMS service (port 3001)
|
|
# Frontend pages stay on port 3000
|
|
|
|
# Auth login - POST goes to CMS, GET stays on frontend
|
|
location = /auth/login {
|
|
proxy_pass http://172.18.0.6:3000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# All other auth API endpoints
|
|
location ^~ /auth/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Branding API
|
|
location = /branding {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Courses API
|
|
location = /courses {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Admin API
|
|
location = /admin {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Organization API
|
|
location = /organization {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Assets
|
|
location ^~ /assets/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Health check
|
|
location = /health {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Users API
|
|
location ^~ /users/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Question bank
|
|
location ^~ /question-bank/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Test templates
|
|
location ^~ /test-templates/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Knowledge base
|
|
location ^~ /knowledge-base/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# API routes
|
|
location ^~ /api/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Modules
|
|
location ^~ /modules/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Lessons
|
|
location ^~ /lessons/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Grading
|
|
location ^~ /grading/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Token usage
|
|
location ^~ /token-usage/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# SAM
|
|
location ^~ /sam/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|
|
|
|
# Embeddings
|
|
location ^~ /embeddings/ {
|
|
proxy_pass http://172.18.0.6:3001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $origin_proto;
|
|
proxy_set_header X-Forwarded-Ssl on;
|
|
}
|