2017-10-16 9 views
0

J'ai un iframe dans un fichier twig, qui affiche le contenu d'un fichier pdf comme celui-ci:alternative pour url absolue lorsque les actifs de chargement (ressources non sécurisé)

<iframe src="https://docs.google.com/gview?url={{ absolute_url(asset('bundles/path/to/file.pdf')) }}&embedded=true"></iframe> 

Mais lors de l'ouverture de l'iframe, affiche chrome cette message d'erreur:

Mixed Content: The page at 'https://website.com/home#pdf' was loaded over HTTPS, but requested an insecure resource 'http://docs.google.com/gview?url=pdf/url?v2249&embedded=true'. This request has been blocked; the content must be served over HTTPS. 

Quelle autre option puis-je utiliser?

Répondre

0

Vous pouvez utiliser

{{ app.request.scheme ~'://' ~ app.request.httpHost ~ asset('bundles/path/to/file.pdf') }} 

Mais l'option préféré est

{{ app.request.getSchemeAndHttpHost() ~ asset('bundles/path/to/file.pdf') }} 

donc la solution prête suivra:

<iframe src="https://docs.google.com/gview?url={{ app.request.getSchemeAndHttpHost() ~ asset('bundles/path/to/file.pdf') }}&embedded=true"></iframe> 
+0

que diriez-vous de cette partie: 'https://docs.google.com/gview? url = '? Est-ce que je le garde avant le '{{}}'? –

+0

Oui, vous devez le garder - Je vais mettre à jour la réponse. –

+0

Cela me donne encore un 'GET http: // localhost: 35729/livereload.js net :: ERR_CONNECTION_REFUSED' et dans l'iframe, je reçois un message" aucun aperçu disponible " –