Функция PHP выполняется на тех же данных в браузере, но получает «Ошибка 502 шлюза» на iOS

У меня проблема с тем, что моя функция PHP работает нормально в браузере, без ошибок, все хорошо. Функция большая, поэтому я не могу ее сюда включить. Но когда iOS запускает эту функцию, используя POST-запрос NSURLConnection, iOS получит 502 Ошибка Bad Gateway nginx. Время выполнения не медленное, поэтому оно не остановилось.

Тот факт, что в браузере функция выполняется с точно такими же данными, не привел меня к ошибке программирования. И если я уменьшу размер обрабатываемых данных, то на iOS все будет работать нормально.

Так что, похоже, это как-то связано с тем, что HTTP-запрос iOS каким-то образом имеет какой-то предел размера данных, который был превышен, что приводит к ошибке 502 Bad Gateway. Или отсутствует какой-либо заголовок, который увеличил бы требуемый ресурс?

Это мой URL-запрос:

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]  init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue: postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody: postData];

0

Решение

После изменения некоторых настроек на следующий, все равно не получится

fastcgi_buffers 16 16k;
proxy_buffer_size   128k;
proxy_buffers   4 256k;
proxy_busy_buffers_size   256k;

Тогда я нашел один параметр, который работал:

fastcgi_buffer_size 128K; (changed from 32K)

Эта настройка, кажется, напрямую связана с буферизацией отклика в восходящем направлении.

0

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

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

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