我有一個Rails 3.2應用程序,我試圖調試一個奇怪的ssl問題。ssl_requirement僅在生產上失敗,僅在兩頁上
我在整個我的應用程序頁面緩存,並保持動態內容我正在做Ajax請求更新某些方面。
所有被高速緩存的頁面都應該只被http請求。當一個ssl請求被創建時,除了其中的兩個都被重定向到http。
問題是,這兩個頁面Artists和Blog無法重定向回http,並且刷新內容的ajax請求被取消。據我所知,它被取消是因爲它將普通的http看作是一個不同的站點,並且你不能在ssl下向另一個站點發出ajax請求。
設置本地簽名證書沒有幫助。在開發過程中,這兩個頁面的行爲恰當。我還使用AWS ELB,其中ssl終止於負載均衡器並轉到端口80,而且似乎也正常工作。
我可以強制這兩個頁面重定向到http每次,但我更願意深究這一點。
我正在使用ssl_requirement來執行應用級別重定向。
我正在尋找如何發生這種情況的想法。我已經梳理了我的代碼庫,並且在應用程序級別找不到任何可以實現此目的的任何內容。我不認爲我的apache虛擬主機是完美的,但沒有任何關於這兩個頁面的東西。任何人都知道這可能發生在堆棧中的哪個位置?
編輯:
終於明白,因爲頁面完全緩存,請求只打了Apache和從來沒有哪裏會被重定向的應用程序。這讓我質疑爲什麼Ajax請求被取消。 Ajax請求位於同一個域但未加密。這不應該僅僅是作爲'不安全內容'的警告嗎?我正在使用jQuery getScript來加載動態內容。