Puncte:0

CORS previne js window.onerror de la informațiile de raportare a subdomeniului

drapel us

Pentru a înregistra erorile Javascript, am configurat o funcție cu window.onerror care declanșează o solicitare ajax și mă informează despre erorile de script. Încarc toate fișierele mele statice dintr-un subdomeniu și dacă apare o eroare dintr-un fișier din afara domeniului principal, CORS pare să ștergă informații din cauza scurgerii... https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#notes

Am încercat să rezolv problema configurând Access-Control-Allow-Origin astfel:

add_header Access-Control-Allow-Origin https://static.example.com;

dar fără succes.

Subdomeniul meu conține, de asemenea, Access-Control-Allow-Origin cu domeniul principal.

Antetul documentului:

Adresa URL a solicitării: https://www.example.com/de/kontaktformular.html
Metoda de solicitare: GET
Cod de stare: 200 
Adresă de la distanță: XXX
Politica referitor: strict-origin-when-cross-origin
access-control-allow-origin: https://static.example.com
cache-control: fără stocare, fără cache, revalidare obligatorie
codificarea conținutului: br
politică-securitate-conținut: ...
tip de conținut: text/html; set de caractere=UTF-8
data: marți, 10 august 2021 10:21:35 GMT
expect-ct: enforce,max-age=30
expiră: joi, 19 nov 1981 08:52:00 GMT
pragma: fără cache
referrer-policy: aceeași origine
server: nginx
strict-transport-security: max-age=15768000; include SubDomains
variază: Acceptare-Codare
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-xss-protecție: 1; mod=bloc
:authority: www.example.com
:method: GET
:cale: /de/kontaktformular.html
:scheme: https
accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3; q=0,9
accept-encoding: gzip, deflate, br
accept-limba: de-IT,de;q=0.9,en-US;q=0.8,en;q=0.7,de-DE;q=0.6
cache-control: fără cache
cookie: __Host-PHPSESSID=k2284o6ejliq4t9113bicbv5tr; cookie_alert=1; cart=MjMtLC03OC0sLTF8fDU1LSwtMTI3LSwtMXx8NTUtLC0xMjgtLC0x
pragma: fără cache
referer: https://www.example.com/de/XXX.html
sec-ch-ua: "Chromium";v="92", " Nu este A;Brand";v="99", "Google Chrome";v="92"
sec-ch-ua-mobile: ?0
sec-fetch-dest: document
sec-fetch-mode: navigați
sec-fetch-site: aceeași origine
sec-fetch-user: ?1
solicitări-upgrade-nesigure: 1
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, ca Gecko) Chrome/92.0.4515.131 Safari/537.36

Antetul fișierului Js care provine din subdomeniu:

Adresa URL de solicitare: https://static.example.com/jquery_scripts.128.js
Metoda de solicitare: GET
Cod de stare: 200 
Adresă de la distanță: XXX
Politica referitor: aceeași origine
access-control-allow-origin: https://www.example.com
cache-control: public, max-age=31536000, s-maxage=31536000
codificarea conținutului: gzip
tip de conținut: text/javascript;charset=UTF-8
data: marți, 10 august 2021 10:21:35 GMT
expiră: miercuri, 10 august 2022 10:21:35 GMT
ultima modificare: marți, 10 august 2021 09:38:16 GMT
server: nginx
strict-transport-security: max-age=15768000; include SubDomains
variază: Acceptare-Codare
x-content-type-options: nosniff
:authority: static.example.com
:method: GET
:cale: /jquery_scripts.128.js
:scheme: https
Accept: */*
accept-encoding: gzip, deflate, br
accept-limba: de-IT,de;q=0.9,en-US;q=0.8,en;q=0.7,de-DE;q=0.6
cache-control: fără cache
pragma: fără cache
sec-ch-ua: "Chromium";v="92", " Nu este A;Brand";v="99", "Google Chrome";v="92"
sec-ch-ua-mobile: ?0
sec-fetch-dest: script
sec-fetch-mode: no-cors
sec-fetch-site: același-site
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, ca Gecko) Chrome/92.0.4515.131 Safari/537.36
Michael Hampton avatar
drapel cz
Aveți o problemă suplimentară fără legătură: fișierul dvs. static `/de/kontaktformular.html` este servit de PHP. Aceasta este probabil o eroare în configurația dvs. nginx.
delato468 avatar
drapel us
@MichaelHampton mulțumesc pentru contribuție, documentul nu este static. Nu pot face documentul static deoarece am conținut dinamic, cum ar fi autentificare etc. Vă rugăm să-mi spuneți dacă am greșit introducerea dvs. și pot îmbunătăți configurația nginx.
Michael Hampton avatar
drapel cz
OK, dacă nu este de fapt un fișier static, atunci nu este nicio problemă.
Puncte:2
drapel in

Din aceeași documentație:

Dacă serverul trimite un răspuns cu un Acces-Control-Permite-Origine valoare care este o origine explicită (mai degrabă decât wildcardul „*”), atunci răspunsul ar trebui să includă și a Varia antet de răspuns cu valoarea Origine â pentru a indica browserelor că răspunsurile serverului pot diferi în funcție de valoarea antetului de solicitare Origin.

Acces-Control-Allow-Origin: https://developer.mozilla.org
Variază: origine
delato468 avatar
drapel us
Am adăugat Vary: Origin, dar nu am putut înlocui antetul cu „vary: Accept-Encoding”. Deci am ambele antete „origine” și „accept-encoding”. Din păcate, nu funcționează și încă nu primesc mesajele de eroare.
delato468 avatar
drapel us
Ok, a trebuit să adaug „https://WWW.example.com” la fișierele mele statice, nu sunt sigur 100% de ce, dar funcționează acum împreună cu „varia”.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.