nokimaro, Спасибо, но при пустом body это не обязательно. Больше того, я специально упростил цитату скрипта здесь - при заполнении body чем-либо (данными или пустотой) проблема остаётся.
Слушайте, по итогам этой темы я сегодня специально проверил нескольких хостеров на предмет настроек PHP по умолчанию - воочию увидел:
1. У одного запущен cURL (extension=php_curl.dll), но не установлены разрешения для openSSL.
2. У второго стоят разрешения на openSSL (extension=php_openssl.dll и allow_url_fopen = On), но не запущен cURL.
3. У третьего ни то ни другое не запущено, у четвертого - всё включено.
Какие минимальные требования к окружению? Где про них почитать? Почему они хостерами не празднуются?
Возможно, я буду опрашивать https-биржи через единый настроенный шлюз, возможно сделаю на примитивах - еще не знаю, задача подкралась незаметно.
Вот и я удивился, мой скрипт возвращает FALSE, а ваш 500 (якобы с Куны, но эта ошибка говорит о том, ч то Куна не может обработать ваш запрос).
И это натолкнуло меня подумать как разные хостеры генерируют разные ошибки.
Затем я проверил настройки своего хостера - и вуаля, он их поменял при переезде. А именно, настройки php.ini (надо включить extension=php_openssl.dll и allow_url_fopen = On)
НО! Если снова попросить их выставить эти настройки, то при переносе скрипта к другим людям он снова начнет ругаться. Поэтому я ищу изящное решение.
Курл - тоже включается/выключается в настройках php.ini и не факт что у кого-то он установлен.
Поэтому задача становится интересней!!!
Спасибо, вы натолкнули меня на мысль, что на разных хостингах по-разному - и точно, мой сменил сервера пару недель назад. На новых серверах не установлены настройки openSSL!
Сейчас подумаю как красиво решить вопрос, чтобы в дальнейшем не было проблем при смене сервера.
nokimaro, Спасибо, но у меня в скрипте (см. пример) подпись и метка времени рассчитывается одинаково для cURL и file_get_contents.
Точно здесь проблема?
1. У меня ранее скрипт работал с file_get_contents. Теперь не работает и я хочу понять, то ли я "оптимизировал" что-то, то ли другое. Желание разобраться.
2. Я не понимаю чем cURL лучше нативных функций. Тем более, чем он лучше быстрой функции file_get_contents.
3. Приватные данные ограничены ридонли, вдруг кто-то захочет опробовать мой код, не регаться же ему для этого на бирже.
FanatPHP, Философия - это хорошо. Но та же сама функция, но с методом GET - работает с Куной прекрасно.
Эту же функцию с методом POST я направлял на свой скрипт и смотрел заголовки - они есть.
Видимо, проблема не в идентичности параметров, а в тонкости самой функции file_get_contents
Хотелось бы верить, что подводный камень в самой функции или в бирже, так как данные - идентичны (см. код).
Ключи - рабочие, можете проверить у себя весь код.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.