Joomla.it Forum
Joomla! 3 => Joomla! 3 => : davix10 08 Oct 2019, 10:38:01
-
Buongiorno a tutti, ho attivato il servizio CDN per Joomla e tutto sembra funzionare correttamente tranne per quanto riguarda le icone e i font, entrambi non vengono caricati. Io utilizzo l'HTTPS sul mio sito web.
Questo è l'errore che visualizzo:
Access to font at ..... from origin ..... has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
e successivamente questo errore
Failed to load resource: net::ERR_FAILED
Potete aiutarmi a capire come risolvere questo problema?
Grazie in anticipo!
-
Ciao, come dice il messaggio di errore, manca l'header Access-Control-Allow-Origin da parte dell'hoster della risorsa.
Per apache, puoi modificare il tuo .htaccess e aggiungere all'inizio:
Header always set Access-Control-Allow-Origin "https://dominio-origine.com"
o con una wildcard:
Header always set Access-Control-Allow-Origin "*"
-
Ciao, grazie per la risposta! Ma il dominio da aggiungere è lo stesso utilizzato per il CDN?
-
E' il dominio dell'origine che fa richiesta della risorsa.
-
Tra l'altro se utilizzi un servizio di cdn dovresti avere il settaggio nel pannello di controllo della cdn.
-
Scusa, forse mi sono spiegato male, cerco di spiegarmi meglio con un esempio:
https://www.tuosito.it (che è definito "origine") richiede una risorsa a https://cdn.tuosito.it (definito "host della risorsa"): quando https://cdn.tuosito.it riceve la richiesta risponde all'origine permettendo o negando la richiesta, a seconda delle impostazioni cors (cross origin resource sharing).
Se l'host risponde con un header Access-Control-Allow-Origin con una wildcard (*) o con la stringa dell'origine, allora l'host permette la richiesta.
Quindi l'htaccess o comunque la direttiva da aggiungere va impostata sull'host.
-
Ti sei spiegato in maniera impeccabile ma purtroppo non riesco a risolvere il problema anche aggiungendo la stringa che mi hai scritto precedentemente nel file .htaccess
Quale può essere il problema secondo te? Va inserita in qualche punto particolare?
Grazie
-
Va inserita nell'htaccess relativo all'hoster della risorsa.
Rileggi i messaggi, che li ho modificati: nel messaggio di errore dovresti avere sia l'origine che l'hoster della risorsa: se aggiungendo l'origine non funziona prova con la wildcard, poi verifica che la risposta dell'hoster contenga l'header Access-Control-Allow-Origin.
Hai un pannello di controllo della CDN?
Se puoi aggiungi i link.
-
Scusa la mia ignoranza ma nella cartella dei font non trovo nessun file htaccess. Trovo solo quello presente nella cartella di root.
Ho capito male io?
-
In una vera cdn c'è il server di origine, quello dove sta il sito con dominio www.sito.com e ci sono i server della cdn, mettiamo ce ne sia uno solo, con dominio cdn.sito.com.I font stanno in cdn.sito.com: il server di cdn.sito.com deve rispondere con un adeguato Access-Control-Allow-Origin.L'htaccess nella root è valido anche per le sottocartelle, a meno che non ci siano altri htaccess nelle sottocartelle.Metti il link.
-
Questo è il link del sito www.otbioelettronica.it
-
Ok, la risorsa sta su https://otbioelettronica.r.worldssl.net (questo è l'hoster della risorsa).
Hai un pannello di controllo per questo worldssl? Se si cerca l'impostazione CORS o qualcosa di simile ed abilitala.
Se invece lo contrrolli come qualsiasi altro spazio web modifica l'.htaccess nella root di https://otbioelettronica.r.worldssl.net
-
Perfetto, ovviamente avevi ragione tu. Ho modificato tutto dal pannello di controllo e ora non ho più il problema!
Ti ringrazio!