嘿,我想知道是否有一種方法來查看您的文件時使用ajax。例如 我有ajax設置等,我提出了一個請求,但任何人都可以找出我的文件夾結構,並去我的PHP文件,任何事情都可能發生,我想要扔他們404如果他們嘗試訪問該文件。我沒有嘗試過任何東西,因爲我沒有最小的線索。 你需要使用.htaccess嗎?只能通過ajax訪問文件
我試圖在互聯網上搜索這個我找不到任何東西,所以如果有另一個類似這樣的帖子讓我知道並給我一個鏈接謝謝你。
嘿,我想知道是否有一種方法來查看您的文件時使用ajax。例如 我有ajax設置等,我提出了一個請求,但任何人都可以找出我的文件夾結構,並去我的PHP文件,任何事情都可能發生,我想要扔他們404如果他們嘗試訪問該文件。我沒有嘗試過任何東西,因爲我沒有最小的線索。 你需要使用.htaccess嗎?只能通過ajax訪問文件
我試圖在互聯網上搜索這個我找不到任何東西,所以如果有另一個類似這樣的帖子讓我知道並給我一個鏈接謝謝你。
不是一件容易的事。
與任何其他HTTP訪問一樣,Ajax是通過請求創建的。正常請求通過GET
方法完成,就像有一個GET
Ajax請求方法一樣。
我面臨的情況和你不是太長,我的解決方案,儘管遠非完美,是這樣的:
POST
方法;一下添加到一個文件,你include
在應該通過Ajax來獲取每個PHP的開始/ require
:
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
header('Location: /404page.php'); //The/represents the site root
exit;
}
這樣一來,人們試圖打開頁面直接將被重定向到404頁面。
當然,人們可以很容易地僞造一個POST請求頭。您也可以爲每個Ajax調用添加一個POST參數,但是也可以僞造一個頭文件,也可以輕鬆地僞造POST數據。
只需進行強大的服務器端驗證以確保用戶有權查看該頁面,並且應該接收的所有數據都在那裏並且是有效的。如果有人用請求標頭四處亂竄,並在應用程序之外看到醜陋的頁面,那畢竟不是你的問題。
我知道你說過你沒有嘗試過任何東西,但是這裏有個問題:[你有什麼嘗試?](http://www.whathaveyoutried.com)。 – rationalboss
@ArtursLapins首先讓你自己瞭解AJAX這個主題,以及它究竟做了什麼,這將是非常明智的。主要觀點是,這是一般情況。如果您嘗試訪問的文件可以通過瀏覽器(或任何允許訪問的協議(本例中爲http/https))進行檢索,則可以使用名爲AJAX的方法來檢索該文件。 – dbf
同意上面的dbf你需要先理解AJAX是什麼,也可以嘗試使用額外的頭文件或傳遞請求的信息。 – Gntem