我有一個使用ssl的安全站點。我有一個php文件檢查登錄,如果你沒有登錄,它會彈出一個登錄表單,一旦你登錄刷新的頁面,並再次檢查登錄,當它通過它加載頁面內容。我想要做的是讓它在https中加載登錄,然後當javascript從ajax中獲得登錄成功的ok後,頁面重新加載僅爲http,以減少頁面的加載時間和延遲(這些是大的網頁和任何小東西都會有所幫助)。我需要動態地做到這一點,所以我不能只給它一個重定向網址。無ssl的重新加載頁面(https到http)
0
A
回答
1
爲了解決這個問題,你可以使用這個未經測試的僞代碼加載在你需要登錄的每一頁的頂部。
if(loggedin()&&$_SERVER[SERVER_PORT]==443)
{
//if user is logged in but they are still on the https site, redirect to the http site
header("Location:http://$_SERVER[HTTP_HOST]$_SERVER[SCRIPT_NAME]?$_SERVER[QUERY_STRING]");
}
elseif(!loggedin()&&$_SERVER[SERVER_PORT]!=443)
{
//if the user is not logged in and they are not on the secure site, send them to the login page on the secure site
header("Location:https://$_SERVER[HTTP_HOST]/login.php");
}
+0
我想這樣做的JavaScript,因爲我需要用戶能夠登錄他們將要在網頁上而不是特定的登錄頁面。 – Osman
0
.htaccess用法是推薦的方法。使用.htaccess僅對單個頁面或特定頁面使用https。
檢查這更多 http://www.sitepoint.com/forums/showthread.php?694107-htaccess-rule-redirect-https-for-just-one-page
相關問題
- 1. 在HTTP頁面上加載HTTPS內容
- 2. .httacces從http重定向到https頁面
- 3. 從https頁面重定向到http
- 4. 無需重新加載頁面重新加載陣列
- 5. 重新加載圖片而無需重新加載頁面?
- 6. 無需重新加載頁面重新加載數據表?
- 7. 帶有https/ssl頁面的純http頁面
- 8. HAProxy將http重定向到https(ssl)
- 9. WAMP SSL: - HTTP重定向到https
- 10. 重新發送HTTP源(重新加載頁面源代碼)
- 11. JQuery - 無法重新加載頁面
- 12. .submit()無需重新加載頁面
- 13. 清除#無需重新加載頁面
- 14. 重定向頁面的一些HTTP和一些頁面到https
- 15. 重定向http頁到https
- 16. Jquery/Ajax刷新無需重新加載或加載頁面?
- 17. 只在一個頁面中將http重定向到https,其他頁面https重定向到http
- 18. onhashchange重新加載頁面?
- 19. 重新加載HTML頁面
- 20. 重新加載頁面
- 21. 重新加載頁面Div
- 22. 重新加載JSP頁面
- 23. AJAX頁面重新加載
- 24. caroufredsel重新加載頁面
- 25. FormsAuthentication.RedirectFromLoginPage重新加載頁面
- 26. mvc重新加載頁面?
- 27. 防止http頁面重定向到https頁面
- 28. 永久重定向從http頁面到https頁面
- 29. 將單個https頁面重定向到另一個http頁面
- 30. .htaccess將2個http頁面重定向到https頁面
一個簡單的302與位置頭不工作?有沒有一個實際的問題?你的用戶是否被提示他們正被重定向到一個不安全的站點? – Brad
我不確定你的意思,但我需要的東西,將採取'https:// blablabla.com/this.php'並重新加載到'http:// blablabla.com/this.php' – Osman
'header('位置:http://blablabla.com/this.php');'但是,我認爲如果你走這條路,IE用戶往往會被通知他們「被重定向到不安全的位置」。我已經看了這個問題已經有一段時間了,但是我相信如果你只是用JavaScript重定向,你就沒有這個問題。然而,你在你的問題中聲明你不想這樣做,但是將它標記爲JS/jQuery,所以我不確定你在問什麼。 – Brad