#php #gssapi #gss
#php #gssapi #gss
Вопрос:
Мы впервые используем GSS и применяем его в нашем приложении.
Если мы выполняем поиск по запросу в GSS, мы получаем хороший результат в зависимости от веб-сайтов, которые мы добавили для поиска. Но если мы передадим GSS около сотни запросов один за другим в цикле for, например,
for ($i = 0, $count = count($arr1); $i < $count; $i )
{
print $arr1[$i]."rnrn";
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:xyxyxyxyxyyxamp;client=google-csbeamp;output=xml_no_dtdamp;q='$in'");
echo $result;
}
Здесь у нас есть длинная строка из нескольких страниц, которую мы разбили на небольшие массивы, скажем, по 30 слов в каждом. Этот массив мы передали в цикле FOR, чтобы получить результат (различные ссылки), мы напечатали результат с помощью echo. Мы также применили режим ожидания в 5 секунд, чтобы сервер получил время для получения результата и его печати, подождите 5 секунд, прежде чем искать другой запрос.
Но когда мы запускаем этот цикл for, мы не получаем результата, скорее наше приложение зависает и выдает нам результат, как показано ниже:
Внутренняя ошибка сервера
Сервер обнаружил внутреннюю ошибку или неправильную конфигурацию и не смог выполнить ваш запрос.
Пожалуйста, свяжитесь с администратором сервера по адресу webmaster@checkforplag.com чтобы сообщить им о времени возникновения этой ошибки и о действиях, которые вы выполнили непосредственно перед этой ошибкой.
Дополнительная информация об этой ошибке может быть доступна в журнале ошибок сервера. Кроме того, при попытке использовать ErrorDocument для обработки запроса была обнаружена ошибка внутренней ошибки сервера 500.
Пожалуйста, подскажите, что нам нужно сделать, чтобы полностью применить GSS в нашем приложении.
Спасибо!
Ответ №1:
Я получил решение для этого, отправив свой php-скрипт в фоновом режиме, и для этого я использовал shell_exec.
Это код, который я использовал:
$status = shell_exec("nohup /usr/bin/php test.php > /dev/null 2>amp;1 amp;");
И теперь я не получаю такого рода ошибки, даже если я запускаю большой файл.