А что когда закачиваешь фаил заголовков от сервера нету что ли? или они у тебя тоже в фаил записываются как один поток?)))
смотри скрипт внимательно. там два while - первый читает все заголовки(просто читает. никуда не пишет)
а второй уже читает файл. короче запусти скрипт на локалхосте и потести =)