簡體   English   中英

延遲或阻止加載,直到php腳本/ javascript已完全執行

[英]delay or prevent loading until php script / javascript has fully executed

我的網站上php / html頁面頂部有一個Auth腳本,用於在人們嘗試訪問受保護的內容而未登錄時重定向他們。我遇到的問題是,無意中加載了保護區鏈接中的內容,在window.location.href將用戶重定向到默認登錄頁面之前,可以查看Flash信息。 這會創建一個安全漏洞,在該漏洞中,無論他們試圖從外部訪問什么頁面,都可以在不到一秒鍾的時間內看到受保護的信息。

有沒有辦法使受保護的內容直到完全執行auth腳本后才加載?

  • 以下腳本位於所有受保護頁面的頂部:

require_once('userSessionAuth.php')
  • 在^上面的腳本^中,我有一個:

 alert("You are not logged in!");
 window.location.href="http://example.com/customerlogin.php";

^^所有受保護的內容均在我所有受保護頁面的這兩行之后列出。

在服務器端執行重定向,而不是將任何內容返回給客戶端:

<?php
// check for auth, if not authenticated then:
header('Location: "http://example.com/customerlogin.php');
exit;
?>

此處的文檔: http : //php.net/manual/en/function.header.php

您的實際問題是無論如何都會發送受保護的內容。

使用標頭功能發送位置重定向,然后立即退出腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM