2017-06-05 126 views
-2

我的Laravel網站部署在Heroku。例如,當我輸入http://example.herokuapp.com - > UI保持不變。但是,當我使用https時,UI會亂跳並斷開。Laravel HTTP vs HTTPS請求

我該如何解決這個問題?

+1

沒有所有的腳本和CSS文件的使用HTTPS? – Jiro90

+2

顯然你有一些http資源,如果主頁面是https,它不會加載 - 建議你使用'// example.com/path/file.ext'代替'http://example.com/path/file。 ext'用於任何外部資源 –

+0

你如何引用你的css和js文件 – Kuru

回答

1

您遇到問題混合內容,您可以瞭解更多關於它here。當初始HTML被加載通過安全的HTTPS連接發生

混合內容

混合內容,但是其它的資源(如圖片,視頻,樣式表,腳本)被裝載在一個不安全的HTTP連接。

解決方案

要解決此問題,只需使用//,而不是定義特定的協議引用您的所有腳本樣式等。在這種情況下,資源將始終使用與頁面本身相同的協議加載。

  • 老:<img src="http://example.com/picture.jpg">
  • 新:<img src="//example.com/picture.jpg">
0

正如大家說的,那是因爲你必須在HTTP協議下載的一些資產,您的域名是HTTPS。

我的建議是,你使用資產()

<img src="{{ asset('images/my-image.png') }}"> 

<link href="{{ asset('css/my-styles.css') }}" rel="stylesheet"> 

<script src="{{ asset('js/my-script.js') }}"></script> 
+0

第二個參數需要是「true」才能保證安全。 –