Мы используем CGI.pm, чтобы помочь нам обрабатывать загрузку файлов на нашем веб-сайте и через наш API, который используется нашими Android-приложениями &. Недавно мы заметили, что CGI.pm, кажется, не возвращает никаких параметров почти для 50% файлов, загружаемых через наше приложение для iPhone. Мы не видели подобной проблемы с этими файлами, загружаемыми через наш веб-сайт.Tricky Issue Обработка загрузки файлов в Perl
Мы не можем реплицировать проблему при тестировании, но в процессе производства cgi_error() метод CGI.pm не сообщает о каких-либо ошибках в тех случаях, когда отсутствуют параметры CGI.pm. Мы подтвердили, что приложение iPhone всегда включает правильные параметры при отправке файлов для загрузки.
Быстрый фон на настройку. У нас есть приложение delpoyed на серверах Amazon EC2, которые балансируют нагрузку с использованием балансировщика эластичной нагрузки Amazon. У нас также есть $ CGI :: POST_MAX = (1024 * 100000); поэтому максимальный размер POST установлен в 100 МБ, и мы подтвердили, что все загрузки находятся под этим лимитом.
Я не уверен, куда идти дальше. Любые идеи о том, что может быть проблемой, и как ее разрешить, очень понравятся. Также будут полезны любые идеи о том, как определить корень проблемы, чтобы мы могли начать поиск и устранение неисправностей.
Заранее благодарим за вашу помощь!
Можете ли вы уточнить свой смысл, когда говорите, что CGI.pm не возвращает никаких параметров для 50% загруженных файлов? Являются ли эти параметры ДРУГИМИ, чем данные файла отсутствуют, или что нет простых данных, доступных для CGI.pm? В журнале ошибок отображается неверное для этих запросов? – kbenson
Абсолютно никаких параметров, возвращаемых CGI.pm, даже если мы подтвердили, что все параметры отправлены корректно iPhone App. Журнал ошибок ничего не сообщает и не является методом cgi_error(), поэтому мы так застряли. –
Это 100 МБ до или после многократного кодирования MIME? – daxim