2016-10-24 6 views
0

たびに満たされ、それがデータApacheのログはerrosと警告して、ほぼ25ギガバイトここに私のコードは、私はちょうどURLを与え、TXTファイルにいくつかのデータストアをそこに持っているウェブサイトからデータを取得することです

foreach ($collector_urls as $key => $value) { 
    $k=0; 
    try{ 
     $file=fopen($value,"r"); 
     while (!feof($file)) { 
      $str=fgets($file); 
      $new_str=explode(".",$str); 
      if(is_numeric($new_str[0])){ 
       // if (!in_array($str,$ip_array)) 
       $array[$ip_count++]=$str; 

      } 
     } 

     $log[$name_in_key]=json_encode(array('status'=>'success','count'=>$k,'key'=>$name_in_key,'url'=>$value)); 
    }catch(Exception $e){ 
     print("Something wrong with file ".$value."<br>"); 
     $log->$name_in_key=array('status'=>'failed','count'=>0); 
    } 
} 
をフェッチを開始します

コードがそうする一方で、いくつかの警告は、到着したので、私は実際に何であるか、それが実行されるたびに、 誤差は約300000行を検討するかもしれない非常に非常に巨大ではfopen、fgetsのための無効なリソース量とISNUMERIC

データを持っています私の問題は、エラーと警告を伴うApacheログの内部で実行された場合、約25GBのメモリを占めていることです。

は、私は、ログ・ファイルや他のいくつかのメソッド内での警告やエラーも私は提案を必要とする間違った

をしていたコードの一部を変更する必要がある必要がありますログインすることではないapcheを伝えることができる方法は、事前に感謝があります

答えて

1

あなたは、この行に入力して、あなたに与えられたドメインのためのバーチャルホストの設定ファイルを編集して、Apacheのエラーログファイルを無効にすることができます

ErrorLog /dev/null 

をしかしI`llは、あなたが代わりに無効にするエラーログの警告やエラーを修正するために助言します。

+0

また、私は私がオンライン読んでいる私のファイルは、TMPファイルのコピーをcraetingされ、順番にスペースを埋めている削除されていないされていることを依頼する必要があり、あなたが読んでいること –

+0

ファイルのために何を提案することができますPHPで? – krasipenkov

関連する問題