Files
resty_functions/conf/moicen/ts.conf
T
weli 23ce2eff19 fix(nginx): fix proxy_pass URI rewriting for /api/v2/ts/ location
nginx does not automatically handle URI appending when variables are used
in proxy_pass. Replace variable-based proxy_pass with hardcoded IP + rewrite
rules to correctly map /api/v2/ts/* → /api/v1/ts/* on the Rust htyts backend.

Symptom: all requests to /api/v2/ts/ returned 404 because the variable-based
proxy_pass sent every request to /api/v1/ts/ (root) regardless of path.
2026-04-26 20:48:49 +08:00

42 lines
1.8 KiB
Plaintext

server {
server_name "ts.moicen.com";
listen 443 ssl;
listen 80;
client_max_body_size 10M;
ssl_certificate /etc/letsencrypt/live/moicen.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/moicen.com/privkey.pem;
set $task_server "http://127.0.0.1:8080";
set $huiwing_htyts_rust "127.0.0.1:3003";
set $task_server_rust "http://$huiwing_htyts_rust";
set $htyuc "http://127.0.0.1:3000";
set $resty_loc "/usr/local/openresty";
location /api/v1/ts/ {
add_header Access-Control-Allow-Origin $http_origin always;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS' always;
add_header Access-Control-Allow-Headers 'Authorization,HtyAdminToken,HtySudoerToken,HtyHost,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type' always;
add_header Access-Control-Allow-Credentials true always;
add_header Access-Control-Max-Age 86400 always;
if ($request_method = 'OPTIONS') {
return 200;
}
proxy_pass http://127.0.0.1:8080/api/v1/ts/;
}
location /api/v2/ts/ {
add_header Access-Control-Allow-Origin $http_origin always;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS' always;
add_header Access-Control-Allow-Headers 'Authorization,HtyAdminToken,HtySudoerToken,HtyHost,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type' always;
add_header Access-Control-Allow-Credentials true always;
add_header Access-Control-Max-Age 86400 always;
if ($request_method = 'OPTIONS') {
return 200;
}
rewrite ^/api/v2/ts/$ /api/v1/ts break;
rewrite ^/api/v2/ts/(.+)$ /api/v1/ts/$1 break;
proxy_pass http://127.0.0.1:3003;
}
}