2017-10-17 75 views
0

隨機的403錯誤,我不得不通過數據庫條目一些代碼,循環並填寫了模板,但5或6小時後停止循環,並拋出一個403錯誤。 這裏是我使用的拉取數據的代碼:在PHP循環

if(isset($_GET['pageid'])){ 
    $page_id = $_GET['pageid']; 
}else{ 
    $page_id = 0; 
} 
$mysqli = mysqli_connect('localhost', 'readonlyuser', 'password'); 
$query_pageid = "SELECT PAGE_ID FROM database.GENERAL WHERE PAGE_ID > ".$page_id." AND ACTIVE LIMIT 1;"; 
$query_results = mysqli_query($mysqli, $query_pageid); 
if(mysqli_num_rows($query_results) != 0){ 
    $query_fields = mysqli_fetch_array($query_results, MYSQLI_ASSOC); 
    $page_id = $query_fields['PAGE_ID']; 
}else{ 
    header("refresh:0;url=http://10.10.10.10/address/index.php"); 
    exit(); 
} 

偶然遇到這樣的事情有任何的嗎?

+0

可能運行內存,磁盤空間或某種形式的時間限制。我們需要更多信息,例如任何錯誤日誌。 – Adam

+0

在不屬於該應用程序的錯誤日誌一個單一的東西.. –

回答

0

403錯誤是指表明服務器麪包車到達,但拒絕採取任何進一步的行動。運行一個循環5-6小時將存儲大量數據,並且您可能內存不足。你能解決這個

的方法之一是使用API​​。

+0

你會如何去這樣做? –

+0

有很多方法可以製作一個你可以輕鬆找到的api。如果你想製作api,我推薦使用像Laravel這樣的php框架,或者使用Nodejs製作一個。 –

+0

這會讓你從太多的請求中獲得403錯誤嗎? –

0

我建議您檢查您的Web服務器日誌,你看起來像你基本上是建立與打擊網絡服務器的連續循環對自己DoS攻擊。

+0

無法找到與該應用程序或服務器請求有關的單個錯誤,而只能找到針對不同應用程序的錯誤。 –