ฉันกำลังพยายามตรวจสอบสิทธิ์ในเซิร์ฟเวอร์ keycloak อย่างไรก็ตาม redirect_uri ไม่ได้มาพร้อมกับบริบท (/admin/)
Nginx กำลังสร้าง URI redirect_uri ที่ไม่ถูกต้อง: hxxps://***.pt/auth/realms/example/protocol/openid-connect/auth?response_type=code&client_id=appmovel&redirect_uri=http%3A%2F%2Fnewservice%2F&state=...
เนื่องจากไม่มี /admin/ ใน URL ส่งผลให้การโทรกลับล้มเหลว
ไฟล์ปรับแต่ง nginx:
เซิร์ฟเวอร์ {
ฟัง 80 default_server;
ฟัง [::]:80 default_server;
ชื่อเซิร์ฟเวอร์ _;
ส่งคืน 301 https://$host$request_uri;
}
#เซิร์ฟเวอร์ HTTPS
เซิร์ฟเวอร์ {
ฟัง 443 ssl;
server_name localhost;
ssl_certificate cert.pem;
ssl_certificate_key cert.key;
ที่ตั้ง / {
รูท /usr/share/nginx/html;
ดัชนี index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
ตำแหน่ง = /50x.html {
รูท /usr/share/nginx/html;
}
ที่ตั้ง /api {
Absolute_redirect ปิด;
proxy_pass http://web-service:8080/api;
}
ตำแหน่ง /admin/ {
proxy_set_header โฮสต์ $host;
ปิด proxy_redirect;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;
proxy_pass http://web-service:8080/;
}
}
ฉันควรกำหนดค่าอย่างไรและที่ไหนเพื่อเก็บ/เพิ่มบริบท (/admin) ใน redirect_uri สามารถทำได้โดยกฎการเขียนซ้ำ nginx ?