ฉันตั้งค่า nginx เป็นพร็อกซีย้อนกลับสำหรับพร็อกซีเซิร์ฟเวอร์สองเครื่อง แต่ละรายการ (เซิร์ฟเวอร์พร็อกซีและพร็อกซี) กำลังทำงานเป็นคอนเทนเนอร์ในสภาพแวดล้อมนักเทียบท่า พร็อกซีเซิร์ฟเวอร์ แอปปอลฟา
เป็นเพียง nginx:อัลไพน์
ให้บริการหน้าเว็บแบบคงที่ (เพื่อวัตถุประสงค์ในการสาธิตและการทดสอบเท่านั้น) ทุกอย่างทำงานได้ดีที่นี่เพราะสิ่งต่าง ๆ นั้นง่าย
อิมเมจของพร็อกซีเซิร์ฟเวอร์อื่นคือ คันบอร์ด/คันบอร์ด
. เมื่อฉันพยายามเข้าถึงบริการนี้ผ่านพร็อกซีย้อนกลับที่ https://example.com/kanboard/
ก่อนอื่นฉันได้รับการตอบกลับ http ที่คาดไว้พร้อมรหัสสถานะ 302 (พบ)
. แต่ส่วนหัวถูกกำหนดให้เป็น ที่ตั้ง: /เข้าสู่ระบบ
(เช่นชี้ไปที่พร็อกซีย้อนกลับของฉัน) ซึ่งไม่มีอยู่ ความคาดหวังของฉันคือการเห็นฟิลด์ส่วนหัวของ ที่อยู่: /kanboard/login
ที่นี่.
ฉันลองกับการกำหนดค่าที่เสนอหลายอย่างไม่สำเร็จ:
- ปราศจาก
proxy_redirect
- กับ
proxy_redirect
- กับ
เขียนใหม่
(ซึ่งไม่ใช่แนวคิดที่ถูกต้องที่นี่เท่าที่ฉันเข้าใจ)
- กับ
กลับ
(ซึ่งไม่ใช่แนวคิดที่ถูกต้องในที่นี้เช่นกัน ใช่ไหม!)
ผมทำอะไรผิดหรือเปล่า?
ของฉัน proxy.conf
ของรายการพร็อกซีย้อนกลับ nginx ดังนี้:
เซิร์ฟเวอร์ {
ฟัง 443 ssl http2;
server_name example.com;
ปิด server_tokens;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_session_cache ในตัว:1000 แชร์:SSL:10m;
ssl_protocols TLSv1.3;
ssl_ciphers "สูง !aNULL !eNULL !EXPORT !CAMELLIA !DES !MD5 !PSK !RC4";
เปิด ssl_prefer_server_ciphers;
access_log /var/log/nginx/nginx-2443.log;
proxy_cache_valid 1 วินาที;
ตำแหน่ง / อัลฟา {
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;
proxy_pass http://appalpha/;
}
ตำแหน่ง /eval_kanboard {
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;
proxy_pass https://restore_eval_kanboard/;
}
}
ฉันขอขอบคุณสำหรับความช่วยเหลือของคุณ
ไชโยโทมัส