0

这是我们第一次使用 GSS 并在我们的应用程序中应用。

如果我们在 GSS 中搜索查询,我们会根据我们添加的要搜索的网站获得良好的结果。但是如果我们在一个 for 循环中一个一个地给 GSS 大约一百个查询,比如,

   for ($i = 0, $count = count($arr1); $i < $count; $i++) 
   {
   print $arr1[$i]."\r\n\r\n";
  sleep(5);

  $in = $arr1[$i];
  $in = str_replace(' ','+',$in); // space is a +
 //google site search start here

$result = httpGet("https://www.google.com/cse?cx=003255331468891731323:xyxyxyxyxyyx&client=google-csbe&output=xml_no_dtd&q='$in'");

echo $result;
}

在这里,我们有一长串的几页,我们将其分成小数组,每组 30 个单词。我们在 FOR 循环中传递了这些数组,为了得到结果(各种链接),我们用 echo 打印了结果。我们还应用了 5 秒的睡眠,以便服务器有时间获取结果并打印它,等待 5 秒,然后再搜索另一个查询。

但是当我们运行这个 for 循环时,我们没有得到结果,而是我们的应用程序挂起,并给我们如下结果:

内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。

请通过 webmaster@checkforplag.com 联系服务器管理员,告知他们此错误发生的时间,以及您在此错误之前执行的操作。

服务器错误日志中可能提供有关此错误的更多信息。此外,在尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误。

错误截图

请建议我们需要做什么才能在我们的应用程序中完全应用 GSS。

谢谢你!

4

1 回答 1

0

我通过在后台进程中发送我的 php 脚本得到了解决方案,为此我使用了 shell_exec。

这是我使用的代码:

$status = shell_exec("nohup /usr/bin/php test.php > /dev/null 2>&1 &");

现在,即使我正在运行一个大文件,我也没有收到这种错误。

于 2016-12-17T08:04:29.527 回答