Il mio sito Web supporta entrambi i protocolli http e https. Tuttavia usando il codice seguente nel file .htaccess, è possibile impostare un solo dominio per consentire le richieste CORS:Consentire richieste di origine incrociata per http e https
Header set Access-Control-Allow-Origin: http://example.com
voglio permettere CORS per HTTP e HTTPS versioni del mio sito (non solo "*") e ha cercato le soluzioni qui: Access-Control-Allow-Origin Multiple Origin Domains?
Ma il problema è che tutte le soluzioni si basano su Origin
intestazione nella richiesta che non può esistere e, inoltre, non è sicuro. (chiunque può inserire un'intestazione di origine nella loro richiesta)
Desidero sapere se la richiesta è stata pubblicata su https e utilizzare questa informazione per impostare l'intestazione CORS corretta. Qualcosa di simile:
SetEnvIf servedOverHttps httpsOrigin=true
Header set Access-Control-Allow-Origin: https://example.me env=httpsOrigin
SetEnvIf notServedOverHttps httpOrigin=true
Header set Access-Control-Allow-Origin: http://example.me env=httpOrigin
Come posso scoprire che si tratta di una richiesta di https?
cosa succede se uno sta impostando le intestazioni a livello di codice dal file php? – Vivek