2014-12-10 76 views
1

我收到了一個在大學(教師)服務器上具有ftp訪問權限的文件夾,並且無法上傳將作爲http服務的html頁面。所有都作爲https服務。該怎麼辦? 我無法控制服務器,只是將我的文件放在public_html下的目錄和位置。強制我的頁面是http而不是https?

當作爲https服務時,我在chrome中看到警告「shield」,表示存在不安全的代碼。

這是因爲腳本中的內容嗎? 我正在使用jQuery從 http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js 和偵聽音頻控制的'結束'事件,所以我可以啓用提交按鈕。就這樣。 如果我接受它的代碼,但我不想要警告。

回答

0

谷歌還提供了這些js文件通過HTTPS,這樣你就可以使用:

https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js

應該解決的問題,除非你有其他的CSS/JS /圖像引用其爲http://

一種替代方案: 嘗試:

<script> 
 
    if (document.location.protocol == "https:") 
 
     document.location='http://yourwebsite..'; 
 
    </script>

+0

那簡單嗎?!好。我仍然可以做什麼,以便我放在網站上的頁面作爲簡單的http服務?或者那是不可能的? (我讀過提供安全內容的服務器不應該服務於普通的http,因爲這可能導致安全漏洞)。 事實是,我並不真正瞭解服務器如何「知道」作爲http或https的服務。是每個目錄還是每個文件列表?作爲內容的上傳者,我能做些什麼來確定我的網頁將如何投放? – pashute 2014-12-11 00:00:29

+0

服務器提供所請求的內容,除非它在Web服務器級別進行自己的重定向。我編輯了我的帖子,以提供您可以使用的替代方案,具體取決於您的服務器設置。 – effayqueue 2014-12-11 00:40:22

+0

它顯然做了自動重定向,並沒有服務原來的http調用。然後它會引發腳本正在調用非安全代碼的警告。將我所有的代碼改爲https都行,但我想知道是否可以克服重定向。 – pashute 2014-12-14 07:25:15

0

變化

https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js

任何和所有外部加載的資源應該是通過https否則它會拋出警告。

1

一個簡單的解決方法就是指資產而不方案:

//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js 

它會自動加載用於加載的頁面(例如相同的協議下的資源:httphttp請求,https爲安全的)。它是透明的。

此外,我會建議總是支持https,即使頁面上存在不安全的內容。不安全的內容確實會影響安全性,但是通過http加載的內容越多,攻擊面越大。從長遠來看,允許用戶使用https會更好。

相關問題