Спасибо за помощь! На самом деле, я имею двойную загрузку и только что проверил мой точный скрипт на моем сервере apache. Когда я передаю 200-мегабайтный файл на apache, он фактически отображает индикатор выполнения при передаче файла. На моем сервере lighttpd страница «занята», поскольку она отправляет файл в фоновом режиме, а затем панель появляется на 100%.
Я думаю, что скрипт работает так, что CGI публикует файл и продолжает записывать размер, записанный в другом файле. Затем каждую секунду вызывается скрипт php, который открывает этот файл и смотрит, сколько было написано.
Похоже, мой сервер lighttpd не позволяет одновременно работать perl и php .. Я могу ошибаться.
На моем сервере Windows я фактически установил WAMP и Perl. Мой lighttpd использует fastcgi для php и просто модуль mod_cgi для сценариев perl.