Это, вероятно, не имеет никакого смысла, но именно поэтому я здесь. Я унаследовал веб-сайт, на котором я пытаюсь использовать больше «функций», например, Франкенштейну нужна вторая левая рука.
Часть приложения делает около 10 различных вызовов API для различных поставщиков услуг по всей стране, чтобы получить котировки. Это делается путем генерации нескольких разных URL-адресов и использования mcurl для их параллельного получения. Ни один из них не возвращает html, каждый запрашивает один API и обновляет базу данных.
Требуется несколько секунд, чтобы вращаться, пока он выполняет запросы API, но ничего в базе данных не обновляется. Я вижу в журналах каждый из запрошенных URL. Если я беру один из этих URL-адресов и помещаю его в адресную строку браузера, он работает просто отлично. API вызывается и база данных обновляется.
Подождите, это еще не все! Для отладки этих отдельных скриптов (поскольку они не имеют выходных данных) я использую fwrite (). Это работает, когда я использую URL в адресной строке браузера, но ничего не пишется, тогда все скрипты выполняются через mcurl. (multi-curl_execute (), если быть точным.)
Короче говоря, когда php использует curl для выполнения скрипта, он не будет обновлять базу данных mysql и не позволит мне открыть файл. Это работает, если я вырезал / вставил запрос GET из журналов в адресную строку браузера.
Теперь это программное обеспечение уже некоторое время находится в рабочем состоянии на работающем сайте и работает для них, как и ожидалось. Я занимаюсь разработкой на своей локальной машине, и это то, где она терпит неудачу. Просто должно быть что-то очень простое.
- Dave