CURL дает разные результаты на двух разных серверах - PullRequest
0 голосов
/ 18 апреля 2019

Это довольно простой пример использования CURL в моем php-скрипте для проверки результатов двух серверов.Внезапно мой код сломался, и я понятия не имею, что случилось.Вот сценарий, у нас есть два или, как мне показалось, идентичные серверы с WHM / Cpanel и два идентичных набора клонированных репозиториев git.Один - наш промежуточный сервер, другой - наша производственная коробка.

Моя проблема в том, что подготовка одного сервера возвращает ожидаемые результаты для простых сценариев ниже.Наша производственная коробка просто возвращает нули.Я проверил конфигурацию на обоих серверах с помощью phpinfo (), и curl установлен правильно.

Мой вопрос: есть ли у кого-нибудь эта проблема раньше?Я действительно хотел бы выяснить это, и это, вероятно, исправит программу, в которой мы так отчаянно нуждаемся.

Еще раз спасибо за любые ответы.Обратите внимание, что приведенный ниже код только показывает, что CURL работает, не проверяя какие-либо ответы или ошибки, которые могли произойти;однако, мы будем отображать любые, если они присутствуют.

Мы протестировали один и тот же код на двух серверах. stagingpinnaclemedplus.com работает, pmpcustomer.com возвращает нулевые значения.

// pageCurl.php

 $data['key'] = $_POST['key'];
 $data['pdf'] = $_POST['pdf'];
 $data['session_id']= $_POST['session_id'];

 echo json_encode($data);
// pagetestcurl.php

       session_start();
       $url = 'http://stagingpinnaclemedplus.com/pageCurl.php';

        $postData['key']= 'LABEL_PATH';
        $postData['pdf'] = 'off';       // Signifies for the PHP page to create PDF file not shown to browser
        $postData['print_mode'] = 'c';
        $postData['session_id'] = session_id();


            $ch = curl_init();
            curl_setopt_array(
                $ch, array(
                CURLOPT_URL => $url,
                CURLOPT_POST => true,
                CURLOPT_RETURNTRANSFER => 1,
                CURLOPT_POSTFIELDS => $postData,
                CURLOPT_FOLLOWLOCATION => true
            ));
            $result = curl_exec($ch);
            $error = curl_error($ch);
            curl_close($ch);
echo "</br>";
echo "Result:".print_r($result).'</br>';
if($error)
echo "Error:".var_dump($error);

Когдая запускаю код на промежуточном сервере, и мы получаем то, что ожидаем:

{"key":"LABEL_PATH","pdf":"off","session_id":"r2jkkmbhd73maj9e8o72mdvqq3"} Result:1\

Когда я запускаю его на своей рабочей коробке (обратите внимание, что имя хоста URL-адреса изменяется на pmpcustomer.com) для testpagecurl.php.Я получаю этот результат:

[Result: {"key":null,"pdf":null,"session_id":null} 
string(0) "" Error:]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...