.cgi 파일의 Curl 가져오기, 항상 504 게이트웨이 시간 초과

.cgi 파일의 Curl 가져오기, 항상 504 게이트웨이 시간 초과

나는 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에서 디버그 수준을 높이세요.

관련 정보