gpt4 book ai didi

php - 什么会导致 curl 在尝试访问本地文件时返回 false?

转载 作者:IT王子 更新时间:2023-10-28 23:57:55 25 4
gpt4 key购买 nike

这个站点已经运行了几个月并且运行良好。我有一个 PHP 页面,它根据 url 中的数据创建发票(例如 viewinvoice.php?id=250 根据记录 250 构建发票)。此页面可通过网络浏览器访问,并且运行良好。

在一个完全不同的页面(即 test.php)上,我试图通过 cURL 访问该文件。但是,当我进行调用并 var_dump 结果时,我得到 bool(false)。

这是进行 cURL 调用的函数:

function file_get_contents_curl($url) {
$ch = curl_init();

curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);

$data = curl_exec($ch);
curl_close($ch);

return $data;
}

HOME 是一个常量,表示完整的 url(例如 http://www.example.com/)。

$invoice_contents = file_get_contents_curl(HOME.'viewinvoice.php?id=242');
echo $invoice_contents;
var_dump( $invoice_contents );

我已经尝试将 url 更改为外部 url(即 http://www.google.com/ )并且页面加载正常。我得到谷歌的主页。但是同一域中的任何页面都不会加载。是否有发生这种情况的原因?

我不是服务器管理员,但我有服务器的根访问权限。我最近没有更改任何设置,但服务器管理员可能升级了 apache 或 php 的版本?

无论如何,有没有我可以修改的设置来使它再次工作?

附言我只是尝试从外部服务器(不同的域)进行这个准确的调用,它工作得很好。

最佳答案

在你的 curl 执行之后,放一些像这样的东西:

echo curl_getinfo($ch) . '<br/>';
echo curl_errno($ch) . '<br/>';
echo curl_error($ch) . '<br/>';

您会看到在执行 curl 期间失败的原因。

更多信息:curl_getinfo curl_errno curl_error

关于php - 什么会导致 curl 在尝试访问本地文件时返回 false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12359100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com