我有一个 IP 摄像头,我使用 Get 方法来打开警报。
当我使用浏览器时一切正常
http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
如果尝试使用这个 php 文件,我总是得到“504 网关超时”
<?php
function httpGet($url)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
$output=curl_exec($ch);
curl_close($ch);
return $output;
}
echo httpGet("http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1");
?>
有人能帮我吗?
谢谢
答案1
我认为您正在从同一台服务器请求一些脚本,并且504
很可能是由于只有一个 PHP 后端进程,因此当您从浏览器请求时,它只有一个请求并且正在获取服务器。
如果您正在使用 php-cgi,请在启动 php-cgi 之前配置环境变量,希望对您有所帮助。
设置 PHP_FCGI_CHILDREN=0
设置 PHP_FCGI_MAX_REQUESTS=10000`
检查您的后端是否可以同时处理多个请求,并且您的脚本不会以某种方式创建死机(请求其自身的输出)。
检查 FCGI 日志。如果没有帮助,请增加 nginx 上的调试级别。