Данные POST с curl & file_get_contents: соединение отклонено - PullRequest
1 голос
/ 03 марта 2020

я пытаюсь опубликовать данные, используя curl & file_get_contents для «url1», но получаю некоторую ошибку. Connection отказывается, но когда отправляет данные на «url2», это нормально.

Curl:

$post = ['data1'=>'A','data2'=>'B'];
$ch = curl_init('url1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

curl: (7) Не удалось подключиться к порту url1 82: Соединение отклонено

file_get_contents:

$data = array('data1'=>'A','data2'=>'B');
$options = array(
                'http' => array(
                    'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
                    'method'  => 'POST',
                    'content' => http_build_query($data),
                    ),
            );
$context  = stream_context_create($options);
$result = file_get_contents('url1', false, $context);
var_dump($result);

Предупреждение: file_get_contents (url1): не удалось открыть поток: соединение отклонено

я сделал ошибку с этим кодом?

1 Ответ

1 голос
/ 03 марта 2020

Этот вопрос, похоже, относится к конфигурации целевого сервера или брандмауэра. Вы можете проверить настройки целевого брандмауэра или использовать все заголовки, необходимые на конечном сервере. Сначала попробуйте использовать и добавить правильное значение для исходного заголовка.

Если проблема не в брандмауэре, вы можете взглянуть на https://www.w3.org/wiki/CORS.

...