Я использую Apache2 на сервере Ubuntu. Клиент загружает большой файл (примерно 2 ГБ) с этого сервера с помощью браузера.
Как мне отслеживать прогресс этой загрузки на стороне сервера. Я хотел бы увидеть, насколько далеко продвинулась конкретная загрузка для клиента.
Спасибо!
Я не думаю, что это возможно, когда Apache обслуживает статический файл.
Однако вы можете использовать сценарий, который доставляет соответствующие заголовки и записывает файл клиенту. Таким образом, вы можете, например, записать текущий прогресс в файл журнала.
Ты пробовал mod_status из апача?
С участием
Статус каждого воркера, количество запросов, которые исполнитель выполнил, и общее количество байтов, обслуженных воркером (*)
Вы можете получить желаемый результат?
Выглядит это так:
Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-22 30807 0/328/6417 _ 111.81 2 0 0.0 2.84 37.39 1.2.4.2
0-22 30807 0/266/5823 _ 111.81 2 0 0.0 1.32 32.97 1.2.4.2 conn.local:80 GET /path/to/file HTTP/1.0
Srv Child Server number - generation
PID OS process ID
Acc Number of accesses this connection / this child / this slot
M Mode of operation
CPU CPU usage, number of seconds
SS Seconds since beginning of most recent request
Req Milliseconds required to process most recent request
Conn Kilobytes transferred this connection
Child Megabytes transferred this child
Slot Total megabytes transferred this slot