Как то в свое время стал вопрос о возможно запуска PHP скриптов да и вообще любых вещей связанных с Web без наличия доступа к компьютеру или хостингу, то бишь в смартфоне.
Для этого было опробовано немало доступных вещей в Googl Play и решено было остановится на приложении KSWEB!
Информация в данной статье не будет рекламой, или описанием возможностей, а всего лишь способ решения одной возникшей проблемы, о которой будет написано ниже!
Суть проблемы состояла в том, что при попытке импортировать базу данных через phpMyAdmin шла длительная обработка действия, и через какое то время выдавало ошибку 404:
При более детальном просмотре лога:
2016/10/29 23:26:49 [error] 19046#0: *5 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "POST /import.php HTTP/1.1", upstream: "fastcgi://unix:/data/data/ru.kslabs.ksweb/php.sock", host: "localhost:8000", referrer: "http://localhost:8000/db_impo rt.php?db=magnum&token=9ba7d19 efc906cc789627acf815d3e0f"
2016/10/29 23:26:49 [error] 19046#0: *5 open() "/mnt/sdcard/ksweb/tools/phpMyAdmin/50x.html" failed (2: No such file or directory), client: 127.0.0.1, server: localhost, request: "POST /import.php HTTP/1.1", upstream: "fastcgi://unix:/data/data/ru. kslabs.ksweb/php.sock", host: "localhost:8000", referrer: "http://localhost:8000/db_impo rt.php?db=magnum&token=9ba7d19 efc906cc789627acf815d3e0f"
Выяснилось, что разработчик допустил ошибку, они заключалась, да по сути и последней версии на текущий момент тоже присутствует, в том, что сервер выдал с ошибкой 504 Gateway Time-out, но вместо отображение информации о ней выдавал ту самую ошибку 404, так как не находил файла о нужной ошибке =)
Так как искал файл, которого отродясь там небыло!
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
И то, что поначалу казалось нелогичным, стало более понятным! Эти настройки устанавливаются при создании любого хоста!
Сама же ошибка 504 возникала в результате длительной обработки запроса, и когда сервер не получал нужный результат в установленный промежуток времени, просто падал! Обычно такие скрипты называют "зомби скриптами", хотя могу и ошибаться =)
Немного покопавшись в сути проблемы, было найдено описание как это исправить!
Для этого в проблемном хосте нужно добавить параметр fastcgi_read_timeout значение которого подбирается опытным путем. В моем случае это значение равнялось 800, как видно на скриншоте выше.
Но и это не все! Для пущей надежности нужно немного изменить параметр max_execution_time в файле конфигурационном файле php интерпретатора.
А что самое смешное, проделывать все это было бы не нужно, если бы изготовитель девайса ставил более высокий класс памяти, у которого уровень чтения и записи быстрее! Так если вы ставите в телефон карту памяти, лучше не пожалейте денег и поставьте 10-й класс.
Надеюсь кому то мой опыт будет полезным и сэкономит время и нервы. Да прибудет с Вами сила!