
I came across this problem when I updated my version of PHP to version 8.2 on my website. Pages that normally worked with the cURL function would sometimes fail with the above error.
The solution is quite simple.
Prior to cURL v7.62.0, the default API used to communicate to remote website was "HTTP 1.1" . From v7.62.0 onwards, the default API has been updated to "HTTP 2/TLS". As such, cURL requests to remote websites that have not upgraded their web server infrastructure to the new "HTTP 2/TLS" standard, will fail as a result.
To work around this issue, insert into your PHP code the following :
<?php
$data = http_build_query(array('param1' => 'test','status' => 'Success'));
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "server api link");
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
// Insert This Line Into Your Code
curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
//
$server_output = curl_exec($curl);
if (curl_error($curl)) {
$error_msg = curl_error($curl);
}
print_r($error_msg);
curl_close($curl);
?>
About the author |
|
![]() |
Tom Thorp is an IT Consultant living in Miami on Queensland's Gold Coast. With more than 30 years working in the IT industry, he has extensive experience. The IT services provided to clients include:
Website development and hosting,
Database Administration, Server Administration (Windows, Linux, Apple), PBX Hosting and Administration, Helpdesk Support (end-user & technical). |
If you like any of my content, consider a donation via Crypto by clicking on one of the payment methods:. |
See Also
Leave a Comment