Reputation: 7656
On my development my code is working properly. When I push to my server it become error.
cURL error 6: Could not resolve host: http (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
Here is my code:
use GuzzleHttp\Client;
try {
$client = new Client();
$client->request('POST', env('API_DOMAIN') . '/v1/user/auth/verified_email',
['headers' => ['Authorization' => 'cm9vcGlhLnVzZXIud2ViOkY0RVN3VXJheS1qVVB1a18='],
'query' => ['token' => $key]]);
return redirect('/')->with('status', 'Your email has been verified. Thanks!')->with('statusType', 'success');
} catch (ConnectException $e) {
Log::error($e);
return redirect('/');
}
Any solution?
Thanks
Upvotes: 12
Views: 52047
Reputation: 2166
Do
php artisan optimize:clear
to clear all caches in laravel
Upvotes: 1
Reputation: 361
Just run your web server, I had the same error but my server was OFF, then I turn it on, and it works for me
Upvotes: -1
Reputation: 311
I had this issue recently and it turns out that I was tunneling through a proxy server. I stopped routing through a proxy and it worked just fine.
Upvotes: 0
Reputation: 5499
This answer helped me. It turned out to be a disparity between curl versions on OSX. Each had a version of openssl being used. Nightmare to find but a straightforward fix. See https://stackoverflow.com/a/54908305/2867894
Upvotes: 1
Reputation: 171
My solution is to clear all type of caches in Artisan.
Run these commands together:
php artisan route:clear
php artisan config:clear
php artisan cache:clear
Upvotes: 16
Reputation: 935
I spent a day to find that the best practice is to actually catch Exceptions in the following manner:
catch(\Exception $ex)
That \ makes all the difference! so DO NOT use :
catch(Exception $ex)
You can put this catch at the end where all other specific exceptions are caught.
Upvotes: 3
Reputation: 337
Your API_DOMAIN may not have been set to a proper url (did it start with http:// or https://)?
It may also be worth a try to restart the web server (e.g. restart nginx).
It could also be a connectivity issue on your server. You can try a reboot of the VPS or check if the firewall did not block your outgoing request. Maybe disable iptables or firewalld for a moment.
There could also be issues with the DNS for the API_DOMAIN. Maybe you did configure it locally in your /etc/hosts on your developmnet environment but not on production. You may check if the dns resolves properly or add it to your /etc/hosts file on your production server.
Upvotes: 1