Iniziamo ad analizzare il tuo script:
perchè le seguenti istruzioni?
Codice PHP:
$parts explode("\r\n"$line_of_text); 
$url = array($parts[0]); 
foreach(
$url as $sito){ 
cioè perchè esegui lo spit con il carattere di fine riga? se non specifichi il secondo parametro della funzione fgets(), tale funzione ti restituiesce tutta la riga. Quindi
Codice PHP:
$parts explode("\r\n"$line_of_text); 
è inutile

Perchè
Codice PHP:
$url = array($parts[0]); 
e poi vai ad iterare l'array?
cioè ti crei un array di un elemento e poi lo iteri?

Poi al posto di fare
Codice PHP:
while (!feof($file_handle) ) { 

$line_of_text fgets($file_handle); 
io farei
Codice PHP:
while($line_of_text fgets($file_handle)){