Există 2 servere web diferite care sunt implementate sub același domeniu (example.com și api.example.com)
vreau sa folosesc Numai http
cookie partajat pe aceste 2 site-uri.
Există o astfel de configurație locală:
https://local.example.com
+ IIS Express + ASP MVC
https://localhost:8888
sau https://api-local.example.com:8888
+ .net core
În cele din urmă, există o mulțime de limitări care nu pot fi depășite:
- schimba numele de domenii
- găzduiește ambele aplicații într-un singur IIS
Căutam să configurez Nginx care să proxy
https://local.example.com:943
la https://local.example.com
https://api-local.example.com:943
la https://api-local.example.com:8888
În mod obișnuit, acest lucru funcționează pentru API-ul de bază .net și pot folosi Postman pentru a interoga datele prin certificatul autosemnat Nginx.
Dar nu îl pot face să funcționeze pentru cel IIS. Chrome afișează alerta și blochează site-ul web
Folosesc o astfel de configurație nginx
evenimente {}
http {
Server {
asculta 943 ssl;
asculta [::]:943 ssl;
nume_server api-local.example.com;
ssl_certificate /etc/nginx/ss.crt;
ssl_certificate_key /etc/nginx/ss.key;
Locație / {
proxy_pass https://host.docker.internal:8888;
proxy_set_header Gazdă $gazdă;
}
}
Server {
asculta 943 ssl;
asculta [::]:943 ssl;
nume_server example.com;
ssl_certificate /etc/nginx/ss.crt;
ssl_certificate_key /etc/nginx/ss.key;
Locație / {
proxy_pass https://host.docker.internal;
proxy_set_header Gazdă $gazdă;
}
}
}
și generând cheia într-un mod similar:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ss.key -out ss.crt -config san.conf
// san.conf
[req]
default_bits = 2048
default_keyfile = ss.key
nume_distins = req_distinguished_name
req_extensions = req_ext
x509_extensions = v3_ca
[nume_distins_req]
countryName = Numele țării (cod cu două litere)
countryName_default = SUA
stateOrProvinceName = Numele statului sau al provinciei (nume complet)
stateOrProvinceName_default = New York
localityName = Numele localității (de exemplu, oraș)
localityName_default = Rochester
organizationName = Numele organizației (de exemplu, companie)
organizationName_default = local.example.com
organizationalUnitName = unitate organizationala
organizationalUnitName_default = Dezvoltare
commonName = Nume comun (de exemplu, FQDN al serverului sau numele TĂU)
commonName_default = local.example.com
commonName_max = 64
[req_ext]
subiectAltName = @alt_names
[v3_ca]
subiectAltName = @alt_names
[alt_names]
DNS.1 = local.example.com
DNS.2 = api-local.example.com