Php 使用curl发送请求时遇到问题

Php 使用curl发送请求时遇到问题,php,curl,Php,Curl,我有一个api,当我试图通过curl发送请求时,我得到了这个错误 无法连接到端口80中的lasoon.co:连接超时 这是我的curl请求代码。当我从localhost发送请求时,它工作正常。但是,当我在服务器上测试时,它会给我相同的错误。很可能您在live服务器上请求的URL与在localhost上请求的URL有所不同。最好使用以下方法进行调试: curl_setopt($handle, CURLOPT_VERBOSE, true); $verbose = fopen('php://temp'

我有一个api,当我试图通过curl发送请求时,我得到了这个错误

无法连接到端口80中的lasoon.co:连接超时


这是我的curl请求代码。当我从localhost发送请求时,它工作正常。但是,当我在服务器上测试时,它会给我相同的错误。

很可能您在live服务器上请求的URL与在localhost上请求的URL有所不同。最好使用以下方法进行调试:

curl_setopt($handle, CURLOPT_VERBOSE, true);
$verbose = fopen('php://temp', 'w+');
curl_setopt($handle, CURLOPT_STDERR, $verbose);
$result = curl_exec($handle);

rewind($verbose);
$verboseLog = stream_get_contents($verbose);
echo "Verbose information:\n<pre>", htmlspecialchars($verboseLog), "</pre>\n";
curl\u setopt($handle,CURLOPT\u VERBOSE,true);
$verbose=fopen('php://temp","w+",;
curl_setopt($handle,CURLOPT_STDERR,$verbose);
$result=curl\u exec($handle);
倒带($verbose);
$verboseLog=stream\u get\u contents($verbose);
回显“详细信息:\n”,htmlspecialchars($verboseLog),“\n”;

这将为您的请求打印审计跟踪,包括您的请求尝试访问的URL。检查这些信息,您应该能够找到问题

这对我来说很好。这个url可以从你的服务器上访问吗?我也可以,但是可以从本地主机上访问。但当我通过此url发送请求时,我收到了此错误。我无法访问您的服务器。如果您可以在服务器上获得SSH控制台,请尝试从内部到达API位置。对不起,是的,我已到达。因此,您的服务器未连接到API,并显示“未能连接到lasoon.co.in端口80:连接超时”。这应该是一个网络问题,并且您的代码还可以。但是它在本地主机上工作。我没有得到真正的答案issue@SubhashShipu答案并不是为了解决您的问题,您没有为任何人提供足够的信息来解决您的问题。答案旨在为您提供一种获取解决问题所需信息的方法。简短的回答是“与localhost上的URL相比,您在live server上请求的URL可能会有所更改”换句话说,您从live server请求的URL无效。我在同一个URL上发送请求,但来自localhost,然后它就可以工作了fine@SubhashShipu如果您添加了上述代码,您应该会看到一堆新的文本输出以及包含URL的请求。您需要在live server上执行此操作,以查看在live server上请求的实际URL。我看到你正在使用打印,但那不一样,添加调试代码我保证你一旦这样做就会看到问题。我在代码中没有发现任何错误我尝试了很多次,即使我没有得到任何关于详细信息的日志你必须在正确的位置回显详细信息,你必须在页面上打印的所有其他东西的同一个地方重复它
curl_setopt($handle, CURLOPT_VERBOSE, true);
$verbose = fopen('php://temp', 'w+');
curl_setopt($handle, CURLOPT_STDERR, $verbose);
$result = curl_exec($handle);

rewind($verbose);
$verboseLog = stream_get_contents($verbose);
echo "Verbose information:\n<pre>", htmlspecialchars($verboseLog), "</pre>\n";