OneNote REST API — загрузка большого вложенного файла приводит к ошибке 502 Bad Gateway

Я загружаю (видео) файловые вложения, используя OneNote REST API с PHP и cURL. Пока все идет гладко с файлами < 30,0 МБ, все, что больше, выдает ошибку 502 Bad Gateway и никаких данных.

Принимая во внимание, что в другая ситуация (общая записная книжка) с ошибкой 502 добавление «FavorDataRecency: true» к запросу API решило проблему, в этой ситуации это не имеет никакого эффекта.

Как обойти эту проблему?

[РЕДАКТИРОВАТЬ]

Это проблема тайм-аута (спасибо Джиму). Мои журналы показывают, что загрузка файлов прекращается с ошибкой 502 ровно через 120 секунд.

Мой PHP-скрипт выполняется на локальном хосте под IIS 10 в Windows 10. Я подумал, что у меня что-то получилось, когда я обнаружил, что время ожидания соединения для IIS составляет 120 секунд. Но я увеличил его до 240 секунд, и барьер тайм-аута все еще там.

Другие изменения конфигурации, которые я сделал:

  • Повысил FastCgi requestTimeout и ActivityTimeout в IIS 10.
  • Добавлен CURLOPT_TIMEOUT 240 секунд (а также CURLOPT_CONNECTTIMEOUT 240 секунд уже установлен).

Я пропускаю какие-то другие настройки тайм-аута?

Есть ли шанс, что это может быть тайм-аут на серверах OneNote?

1

Решение

Похоже, вы попали в тайм-аут где-то по пути. PHP имеет максимальное время исполнения конфигурация ini, cURL имеет настройки тайм-аута, и различные веб-серверы могут иметь максимальное время соединения, этот пост похож: "Ошибка плохого шлюза 502" при попытке загрузить сгенерированный сервером файл .zip

Это будет зависеть от того, какой программный стек вы используете, но проверьте параметры конфигурации для значений времени ожидания, которые вы, вероятно, превышаете, загружая большие файлы. Это также хороший ресурс для тайм-аутов PHP, apache и FCGI / FastCGI: https://www.devside.net/wamp-server/apache-and-php-limits-and-timeouts

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]