所以我遇到了一个带有php curl请求的奇怪情况。 当脚本从与运行它的服务器相同的本地网络中调用时,但是当有人从外部调用它时,它不能正常工作。 这是我的代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, ROOT_DIR."directory/someScript.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
$output = curl_exec($ch);
curl_close($ch);
当我甚至从局域网外部手动运行someScript.php
时,它工作得很好。只有当我尝试通过另一个PHP脚本使用curl调用它来运行它时才会出现问题。
有人有什么想法吗? curl库已启用。两个脚本都在同一台服务器上。
我在端口80上使用端口转发使服务器在Internet上可见。
答案 0 :(得分:0)
我决定发布解决方案以防其他人遇到同样的问题。 最后我找到了原因。问题是我使用外部IP而不是内部IP调用脚本。更进一步,因为这个XAMPP将调用重定向到其默认页面,因为我没有使用输出,所以我没有注意到。