ฉันกำลังพยายามให้แอปพลิเคชันพร็อกซีจาวาทำงานบนพอร์ต 4443
ใช้ nginx บล็อกเซิร์ฟเวอร์ nginx ของฉันมีลักษณะดังนี้:
แผนที่ $http_upgrade $connection_upgrade {
อัพเกรดเริ่มต้น;
'' ปิด;
}
เซิร์ฟเวอร์ต้นน้ำ {
เซิร์ฟเวอร์ example.com:4443;
}
เซิร์ฟเวอร์ {
ชื่อเซิร์ฟเวอร์ ov.example.com www.ov.example.com;
ที่ตั้ง / {
proxy_pass https://overserver;
proxy_set_header อัพเกรด $http_upgrade;
proxy_set_header การเชื่อมต่อ $connection_upgrade;
proxy_http_version 1.1;
proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;
proxy_set_header โฮสต์ $http_host;
เปิด proxy_intercept_errors;
ปิด proxy_redirect;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-NginX-Proxy จริง;
ปิด proxy_ssl_session_reuse;
}
ฟัง [::]:443 ssl;
ฟัง 443 ssl;
ssl_certificate /etc/letsencrypt/live/ov.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ov.example.com/privkey.pem;
รวม /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
เซิร์ฟเวอร์ {
ถ้า ($host = ov.example.com) {
ส่งคืน 301 https://$host$request_uri;
}
ฟัง 80;
ฟัง [::]:80;
ชื่อเซิร์ฟเวอร์ ov.example.com www.ov.example.com;
กลับ 404;
}
ฉันต้องการส่งคำขอทั้งหมดที่สร้างโดยแอปพลิเคชันจาวาในพอร์ต 4443 ไปยังโฮสต์ที่กำหนด อดีต:
https://example.com:4443/something/here => https://ov.example.com/something/here
wss://example.com:443/something/here => wss://ov.example.com/something/here
แต่ด้วยการกำหนดค่าปัจจุบันของฉัน มันยังใช้งานไม่ได้ ข้อเสนอแนะใด ๆ ที่ชื่นชม
อัพเต 1
ตัวอย่างคำขอ curl:
curl -- ชื่อผู้ใช้: รหัสผ่าน https://example.com:4443/something/api/ที่นี่
curl: (60) ปัญหาใบรับรอง SSL: ใบรับรองที่ลงนามด้วยตนเอง
curl -- ชื่อผู้ใช้: รหัสผ่าน https://ov.example.com/something/api/here
{"numberOfElements":0,"content":[]} # คำตอบที่คาดหวัง
อัพเดท 2
curl -- ชื่อผู้ใช้: รหัสผ่าน https://example.com:4443/something/api/here --key /etc/letsencrypt/live/ov.example.com/privkey.pem --cert /etc/letsencrypt/live /ov.example.com/cert.pem
#การตอบสนอง
ปัญหาใบรับรอง SSL: ใบรับรองที่ลงนามด้วยตนเอง