जवाबों:
यहां स्पाइडर नामों की एक खोज इंजन निर्देशिका है
फिर आप $_SERVER['HTTP_USER_AGENT'];
यह जांचने के लिए उपयोग करते हैं कि एजेंट मकड़ी है या नहीं।
if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot"))
{
// what to do
}
strpos
लौटता FALSE
है। यह तेज़ और अधिक कुशल है, हालांकि (कोई प्रीप्रोसेसिंग नहीं है, और कोई ओ (एम) भंडारण नहीं है)।
मैं निम्नलिखित कोड का उपयोग करता हूं जो लगता है कि ठीक काम कर रहा है:
function _bot_detected() {
return (
isset($_SERVER['HTTP_USER_AGENT'])
&& preg_match('/bot|crawl|slurp|spider|mediapartners/i', $_SERVER['HTTP_USER_AGENT'])
);
}
अपडेट 16-06-2017 https://support.google.com/webmasters/answer/1061943?hl=en
जोड़े गए मध्यस्थ
$_SERVER['HTTP_USER_AGENT']
यहाँ सूचीबद्ध तार में से कुछ के लिए जाँच करें:
http://www.useragentstring.com/pages/useragentstring.php
या अधिक विशेष रूप से क्रॉलर के लिए:
http://www.useragentstring.com/pages/useragentstring.php?typ=Crawler
यदि आप -say- सबसे सामान्य खोज इंजन क्रॉलर की विज़िट की संख्या लॉग इन करना चाहते हैं, तो आप उपयोग कर सकते हैं
$interestingCrawlers = array( 'google', 'yahoo' );
$pattern = '/(' . implode('|', $interestingCrawlers) .')/';
$matches = array();
$numMatches = preg_match($pattern, strtolower($_SERVER['HTTP_USER_AGENT']), $matches, 'i');
if($numMatches > 0) // Found a match
{
// $matches[1] contains an array of all text matches to either 'google' or 'yahoo'
}
आप चेकआउट कर सकते हैं कि क्या यह इस फ़ंक्शन के साथ एक खोज इंजन है:
<?php
function crawlerDetect($USER_AGENT)
{
$crawlers = array(
'Google' => 'Google',
'MSN' => 'msnbot',
'Rambler' => 'Rambler',
'Yahoo' => 'Yahoo',
'AbachoBOT' => 'AbachoBOT',
'accoona' => 'Accoona',
'AcoiRobot' => 'AcoiRobot',
'ASPSeek' => 'ASPSeek',
'CrocCrawler' => 'CrocCrawler',
'Dumbot' => 'Dumbot',
'FAST-WebCrawler' => 'FAST-WebCrawler',
'GeonaBot' => 'GeonaBot',
'Gigabot' => 'Gigabot',
'Lycos spider' => 'Lycos',
'MSRBOT' => 'MSRBOT',
'Altavista robot' => 'Scooter',
'AltaVista robot' => 'Altavista',
'ID-Search Bot' => 'IDBot',
'eStyle Bot' => 'eStyle',
'Scrubby robot' => 'Scrubby',
'Facebook' => 'facebookexternalhit',
);
// to get crawlers string used in function uncomment it
// it is better to save it in string than use implode every time
// global $crawlers
$crawlers_agents = implode('|',$crawlers);
if (strpos($crawlers_agents, $USER_AGENT) === false)
return false;
else {
return TRUE;
}
}
?>
तब आप इसका उपयोग कर सकते हैं जैसे:
<?php $USER_AGENT = $_SERVER['HTTP_USER_AGENT'];
if(crawlerDetect($USER_AGENT)) return "no need to lang redirection";?>
मैं बॉट का पता लगाने के लिए इसका उपयोग कर रहा हूं:
if (preg_match('/bot|crawl|curl|dataprovider|search|get|spider|find|java|majesticsEO|google|yahoo|teoma|contaxe|yandex|libwww-perl|facebookexternalhit/i', $_SERVER['HTTP_USER_AGENT'])) {
// is bot
}
इसके अलावा मैं अवांछित बॉट्स को ब्लॉक करने के लिए एक श्वेतसूची का उपयोग करती हूं:
if (preg_match('/apple|baidu|bingbot|facebookexternalhit|googlebot|-google|ia_archiver|msnbot|naverbot|pingdom|seznambot|slurp|teoma|twitter|yandex|yeti/i', $_SERVER['HTTP_USER_AGENT'])) {
// allowed bot
}
एक अवांछित बॉट (= गलत-सकारात्मक उपयोगकर्ता) फिर 24 घंटों के लिए खुद को अनब्लॉक करने के लिए कैप्चा को हल करने में सक्षम है। और जैसा कि कोई भी इस कैप्चा को हल नहीं करता है, मुझे पता है कि यह गलत-सकारात्मक का उत्पादन नहीं करता है। तो बॉट डिटेक्शन पूरी तरह से काम करने लगता है।
नोट: मेरा श्वेतसूची Facebooks robots.txt पर आधारित है ।
)
कोड के अपने पहले टुकड़े में एक समापन भूल गए ।
क्योंकि कोई भी ग्राहक उपयोगकर्ता-एजेंट को जो कुछ भी चाहते हैं, उसे 'Googlebot', 'bingbot' इत्यादि की तलाश में सेट कर सकता है।
दूसरा भाग क्लाइंट के आईपी का सत्यापन कर रहा है। पुराने दिनों में यह आईपी सूचियों को बनाए रखना आवश्यक था। ऑनलाइन मिलने वाली सभी सूचियां पुरानी हो चुकी हैं। शीर्ष खोज इंजन आधिकारिक तौर पर DNS के माध्यम से सत्यापन का समर्थन करते हैं, जैसा कि Google https://support.google.com/webmasters/answer/80553 और Bing http://www.bing.com/webmaster/help/how-to-verify द्वारा समझाया गया है -bingbot-3905dc26
सबसे पहले क्लाइंट IP का रिवर्स DNS लुकअप करें। Google के लिए यह googlebot.com के तहत एक होस्ट नाम लाता है, बिंग के लिए यह search.msn.com के अंतर्गत है। फिर, क्योंकि कोई व्यक्ति अपने आईपी पर इस तरह के रिवर्स DNS को सेट कर सकता है, आपको उस होस्टनाम पर फॉरवर्ड DNS लुकअप के साथ सत्यापित करने की आवश्यकता है। यदि परिणामी आईपी साइट के विज़िटर में से एक के समान है, तो आपको यकीन है कि यह उस खोज इंजन से क्रॉलर है।
मैंने जावा में एक लाइब्रेरी लिखी है जो आपके लिए ये चेक करती है। इसे PHP में पोर्ट करने के लिए स्वतंत्र महसूस करें। यह GitHub पर है: https://github.com/optimaize/webcrawler-verifier
मैं इस फ़ंक्शन का उपयोग करता हूं ... रेगेक्स का हिस्सा प्रेस्टैसोप से आता है लेकिन मैंने इसमें कुछ और बॉट जोड़ा है।
public function isBot()
{
$bot_regex = '/BotLink|bingbot|AhrefsBot|ahoy|AlkalineBOT|anthill|appie|arale|araneo|AraybOt|ariadne|arks|ATN_Worldwide|Atomz|bbot|Bjaaland|Ukonline|borg\-bot\/0\.9|boxseabot|bspider|calif|christcrawler|CMC\/0\.01|combine|confuzzledbot|CoolBot|cosmos|Internet Cruiser Robot|cusco|cyberspyder|cydralspider|desertrealm, desert realm|digger|DIIbot|grabber|downloadexpress|DragonBot|dwcp|ecollector|ebiness|elfinbot|esculapio|esther|fastcrawler|FDSE|FELIX IDE|ESI|fido|H�m�h�kki|KIT\-Fireball|fouineur|Freecrawl|gammaSpider|gazz|gcreep|golem|googlebot|griffon|Gromit|gulliver|gulper|hambot|havIndex|hotwired|htdig|iajabot|INGRID\/0\.1|Informant|InfoSpiders|inspectorwww|irobot|Iron33|JBot|jcrawler|Teoma|Jeeves|jobo|image\.kapsi\.net|KDD\-Explorer|ko_yappo_robot|label\-grabber|larbin|legs|Linkidator|linkwalker|Lockon|logo_gif_crawler|marvin|mattie|mediafox|MerzScope|NEC\-MeshExplorer|MindCrawler|udmsearch|moget|Motor|msnbot|muncher|muninn|MuscatFerret|MwdSearch|sharp\-info\-agent|WebMechanic|NetScoop|newscan\-online|ObjectsSearch|Occam|Orbsearch\/1\.0|packrat|pageboy|ParaSite|patric|pegasus|perlcrawler|phpdig|piltdownman|Pimptrain|pjspider|PlumtreeWebAccessor|PortalBSpider|psbot|Getterrobo\-Plus|Raven|RHCS|RixBot|roadrunner|Robbie|robi|RoboCrawl|robofox|Scooter|Search\-AU|searchprocess|Senrigan|Shagseeker|sift|SimBot|Site Valet|skymob|SLCrawler\/2\.0|slurp|ESI|snooper|solbot|speedy|spider_monkey|SpiderBot\/1\.0|spiderline|nil|suke|http:\/\/www\.sygol\.com|tach_bw|TechBOT|templeton|titin|topiclink|UdmSearch|urlck|Valkyrie libwww\-perl|verticrawl|Victoria|void\-bot|Voyager|VWbot_K|crawlpaper|wapspider|WebBandit\/1\.0|webcatcher|T\-H\-U\-N\-D\-E\-R\-S\-T\-O\-N\-E|WebMoose|webquest|webreaper|webs|webspider|WebWalker|wget|winona|whowhere|wlm|WOLP|WWWC|none|XGET|Nederland\.zoek|AISearchBot|woriobot|NetSeer|Nutch|YandexBot|YandexMobileBot|SemrushBot|FatBot|MJ12bot|DotBot|AddThis|baiduspider|SeznamBot|mod_pagespeed|CCBot|openstat.ru\/Bot|m2e/i';
$userAgent = empty($_SERVER['HTTP_USER_AGENT']) ? FALSE : $_SERVER['HTTP_USER_AGENT'];
$isBot = !$userAgent || preg_match($bot_regex, $userAgent);
return $isBot;
}
वैसे भी इस बात का ख्याल रखें कि कुछ बॉट अपनी पहचान को नकली बनाने के लिए यूजर एजेंट जैसे ब्राउज़र का उपयोग करते हैं
(मुझे कई रूसी आईपी मिले हैं, जो मेरी साइट पर यह व्यवहार करते हैं)
अधिकांश बॉट की एक विशिष्ट विशेषता यह है कि वे कोई कुकी नहीं ले जाते हैं और इसलिए उनके साथ कोई सत्र नहीं जुड़ा होता है।
(मुझे यकीन नहीं है कि कैसे लेकिन यह सुनिश्चित करने के लिए है कि उन्हें ट्रैक करने का सबसे अच्छा तरीका है)
आप उपयोगकर्ता एजेंट ( $_SERVER['HTTP_USER_AGENT']
) का विश्लेषण कर सकते हैं या खोज इंजन बॉट के आईपी पते की सूची के$_SERVER['REMOTE_ADDR']
साथ ग्राहक के आईपी पते ( ) की तुलना कर सकते हैं ।
डिवाइस डिटेक्टर ओपन सोर्स लाइब्रेरी का उपयोग करें, यह एक isBot () फ़ंक्शन प्रदान करता है: https://github.com/piwik/device.ditector
<?php // IPCLOACK HOOK
if (CLOAKING_LEVEL != 4) {
$lastupdated = date("Ymd", filemtime(FILE_BOTS));
if ($lastupdated != date("Ymd")) {
$lists = array(
'http://labs.getyacg.com/spiders/google.txt',
'http://labs.getyacg.com/spiders/inktomi.txt',
'http://labs.getyacg.com/spiders/lycos.txt',
'http://labs.getyacg.com/spiders/msn.txt',
'http://labs.getyacg.com/spiders/altavista.txt',
'http://labs.getyacg.com/spiders/askjeeves.txt',
'http://labs.getyacg.com/spiders/wisenut.txt',
);
foreach($lists as $list) {
$opt .= fetch($list);
}
$opt = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $opt);
$fp = fopen(FILE_BOTS,"w");
fwrite($fp,$opt);
fclose($fp);
}
$ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '';
$ref = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
$agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
$host = strtolower(gethostbyaddr($ip));
$file = implode(" ", file(FILE_BOTS));
$exp = explode(".", $ip);
$class = $exp[0].'.'.$exp[1].'.'.$exp[2].'.';
$threshold = CLOAKING_LEVEL;
$cloak = 0;
if (stristr($host, "googlebot") && stristr($host, "inktomi") && stristr($host, "msn")) {
$cloak++;
}
if (stristr($file, $class)) {
$cloak++;
}
if (stristr($file, $agent)) {
$cloak++;
}
if (strlen($ref) > 0) {
$cloak = 0;
}
if ($cloak >= $threshold) {
$cloakdirective = 1;
} else {
$cloakdirective = 0;
}
}
?>
यह मकड़ियों के लिए लबादा लगाने का आदर्श तरीका होगा। यह एक ओपन सोर्स स्क्रिप्ट से है जिसे [YACG] - http://getyacg.com कहा जाता है
थोड़ा काम चाहिए, लेकिन निश्चित रूप से जाने का रास्ता।
मैंने इसके लिए एक अच्छा और तेज कार्य किया
function is_bot(){
if(isset($_SERVER['HTTP_USER_AGENT']))
{
return preg_match('/rambler|abacho|acoi|accona|aspseek|altavista|estyle|scrubby|lycos|geona|ia_archiver|alexa|sogou|skype|facebook|twitter|pinterest|linkedin|naver|bing|google|yahoo|duckduckgo|yandex|baidu|teoma|xing|java\/1.7.0_45|bot|crawl|slurp|spider|mediapartners|\sask\s|\saol\s/i', $_SERVER['HTTP_USER_AGENT']);
}
return false;
}
यह 99% सभी संभावित बॉट, सर्च इंजन आदि को कवर करता है।
मैं इस कोड का उपयोग कर रहा हूँ, बहुत अच्छा। आपको यह जानकर बहुत आसानी होगी कि उपयोगकर्ता-एजेंट आपकी साइट को देख चुके हैं। यह कोड एक फाइल खोल रहा है और फाइल को नीचे user_agent लिखें। आप प्रत्येक दिन इस फ़ाइल को चेक करके जा सकते हैं yourdomain.com/useragent.txt
और नए user_agents के बारे में जान सकते हैं और यदि खंड में हैं तो उन्हें अपनी स्थिति में रख सकते हैं।
$user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);
if(!preg_match("/Googlebot|MJ12bot|yandexbot/i", $user_agent)){
// if not meet the conditions then
// do what you need
// here open a file and write the user_agent down the file. You can check each day this file useragent.txt and know about new user_agents and put them in your condition of if clause
if($user_agent!=""){
$myfile = fopen("useragent.txt", "a") or die("Unable to open file useragent.txt!");
fwrite($myfile, $user_agent);
$user_agent = "\n";
fwrite($myfile, $user_agent);
fclose($myfile);
}
}
यह useragent.txt की सामग्री है
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (compatible; MJ12bot/v1.4.6; http://mj12bot.com/)Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)mozilla/5.0 (compatible; yandexbot/3.0; +http://yandex.com/bots)
mozilla/5.0 (compatible; yandexbot/3.0; +http://yandex.com/bots)
mozilla/5.0 (compatible; yandexbot/3.0; +http://yandex.com/bots)
mozilla/5.0 (compatible; yandexbot/3.0; +http://yandex.com/bots)
mozilla/5.0 (compatible; yandexbot/3.0; +http://yandex.com/bots)
mozilla/5.0 (iphone; cpu iphone os 9_3 like mac os x) applewebkit/601.1.46 (khtml, like gecko) version/9.0 mobile/13e198 safari/601.1
mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/53.0.2785.143 safari/537.36
mozilla/5.0 (compatible; linkdexbot/2.2; +http://www.linkdex.com/bots/)
mozilla/5.0 (windows nt 6.1; wow64; rv:49.0) gecko/20100101 firefox/49.0
mozilla/5.0 (windows nt 6.1; wow64; rv:33.0) gecko/20100101 firefox/33.0
mozilla/5.0 (windows nt 6.1; wow64; rv:49.0) gecko/20100101 firefox/49.0
mozilla/5.0 (windows nt 6.1; wow64; rv:33.0) gecko/20100101 firefox/33.0
mozilla/5.0 (windows nt 6.1; wow64; rv:49.0) gecko/20100101 firefox/49.0
mozilla/5.0 (windows nt 6.1; wow64; rv:33.0) gecko/20100101 firefox/33.0
mozilla/5.0 (windows nt 6.1; wow64; rv:49.0) gecko/20100101 firefox/49.0
mozilla/5.0 (windows nt 6.1; wow64; rv:33.0) gecko/20100101 firefox/33.0
mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/53.0.2785.143 safari/537.36
mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/53.0.2785.143 safari/537.36
mozilla/5.0 (compatible; baiduspider/2.0; +http://www.baidu.com/search/spider.html)
zoombot (linkbot 1.0 http://suite.seozoom.it/bot.html)
mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/44.0.2403.155 safari/537.36 opr/31.0.1889.174
mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/44.0.2403.155 safari/537.36 opr/31.0.1889.174
sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)
mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/44.0.2403.155 safari/537.36 opr/31.0.1889.174
100% वर्किंग बॉट डिटेक्टर। यह मेरी वेबसाइट पर सफलतापूर्वक काम कर रहा है।
function isBotDetected() {
if ( preg_match('/abacho|accona|AddThis|AdsBot|ahoy|AhrefsBot|AISearchBot|alexa|altavista|anthill|appie|applebot|arale|araneo|AraybOt|ariadne|arks|aspseek|ATN_Worldwide|Atomz|baiduspider|baidu|bbot|bingbot|bing|Bjaaland|BlackWidow|BotLink|bot|boxseabot|bspider|calif|CCBot|ChinaClaw|christcrawler|CMC\/0\.01|combine|confuzzledbot|contaxe|CoolBot|cosmos|crawler|crawlpaper|crawl|curl|cusco|cyberspyder|cydralspider|dataprovider|digger|DIIbot|DotBot|downloadexpress|DragonBot|DuckDuckBot|dwcp|EasouSpider|ebiness|ecollector|elfinbot|esculapio|ESI|esther|eStyle|Ezooms|facebookexternalhit|facebook|facebot|fastcrawler|FatBot|FDSE|FELIX IDE|fetch|fido|find|Firefly|fouineur|Freecrawl|froogle|gammaSpider|gazz|gcreep|geona|Getterrobo-Plus|get|girafabot|golem|googlebot|\-google|grabber|GrabNet|griffon|Gromit|gulliver|gulper|hambot|havIndex|hotwired|htdig|HTTrack|ia_archiver|iajabot|IDBot|Informant|InfoSeek|InfoSpiders|INGRID\/0\.1|inktomi|inspectorwww|Internet Cruiser Robot|irobot|Iron33|JBot|jcrawler|Jeeves|jobo|KDD\-Explorer|KIT\-Fireball|ko_yappo_robot|label\-grabber|larbin|legs|libwww-perl|linkedin|Linkidator|linkwalker|Lockon|logo_gif_crawler|Lycos|m2e|majesticsEO|marvin|mattie|mediafox|mediapartners|MerzScope|MindCrawler|MJ12bot|mod_pagespeed|moget|Motor|msnbot|muncher|muninn|MuscatFerret|MwdSearch|NationalDirectory|naverbot|NEC\-MeshExplorer|NetcraftSurveyAgent|NetScoop|NetSeer|newscan\-online|nil|none|Nutch|ObjectsSearch|Occam|openstat.ru\/Bot|packrat|pageboy|ParaSite|patric|pegasus|perlcrawler|phpdig|piltdownman|Pimptrain|pingdom|pinterest|pjspider|PlumtreeWebAccessor|PortalBSpider|psbot|rambler|Raven|RHCS|RixBot|roadrunner|Robbie|robi|RoboCrawl|robofox|Scooter|Scrubby|Search\-AU|searchprocess|search|SemrushBot|Senrigan|seznambot|Shagseeker|sharp\-info\-agent|sift|SimBot|Site Valet|SiteSucker|skymob|SLCrawler\/2\.0|slurp|snooper|solbot|speedy|spider_monkey|SpiderBot\/1\.0|spiderline|spider|suke|tach_bw|TechBOT|TechnoratiSnoop|templeton|teoma|titin|topiclink|twitterbot|twitter|UdmSearch|Ukonline|UnwindFetchor|URL_Spider_SQL|urlck|urlresolver|Valkyrie libwww\-perl|verticrawl|Victoria|void\-bot|Voyager|VWbot_K|wapspider|WebBandit\/1\.0|webcatcher|WebCopier|WebFindBot|WebLeacher|WebMechanic|WebMoose|webquest|webreaper|webspider|webs|WebWalker|WebZip|wget|whowhere|winona|wlm|WOLP|woriobot|WWWC|XGET|xing|yahoo|YandexBot|YandexMobileBot|yandex|yeti|Zeus/i', $_SERVER['HTTP_USER_AGENT'])
) {
return true; // 'Above given bots detected'
}
return false;
} // End :: isBotDetected()
यदि आपको वास्तव में GOOGLE इंजन बॉट्स का पता लगाने की आवश्यकता है, तो आपको "user_agent" या "IP" पते पर कभी भी भरोसा नहीं करना चाहिए क्योंकि "user_agent" को बदला जा सकता है और जो Google में कहा गया है उसके अनुसार हो सकता है: Googlebot सत्यापित करना
Googlebot को कॉलर के रूप में सत्यापित करने के लिए:
1. होस्ट कमांड का उपयोग करके अपने लॉग से एक्सेस आईपी पते पर रिवर्स डीएनएस लुकअप करें।
2. सत्यापित करें कि डोमेन नाम या तो googlebot.com या google.com में है
3. पुनः प्राप्त डोमेन नाम पर होस्ट कमांड का उपयोग करके चरण 1 में प्राप्त डोमेन नाम पर एक आगे डीएनएस लुकअप । सत्यापित करें कि यह आपके लॉग से मूल एक्सेस करने वाले आईपी पते के समान है।
यहाँ मेरा परीक्षण कोड है:
<?php
$remote_add=$_SERVER['REMOTE_ADDR'];
$hostname = gethostbyaddr($remote_add);
$googlebot = 'googlebot.com';
$google = 'google.com';
if (stripos(strrev($hostname), strrev($googlebot)) === 0 or stripos(strrev($hostname),strrev($google)) === 0 )
{
//add your code
}
?>
इस कोड में हम "hostname" की जांच करते हैं, जिसमें "hostname" के अंत में "googlebot.com" या "google.com" होना चाहिए जो कि सटीक डोमेन की जांच करने के लिए वास्तव में महत्वपूर्ण है न कि उप डोमेन। मैं आशा करता हु की आप आनंद लोगे ;)
Google के लिए मैं इस विधि का उपयोग कर रहा हूँ।
function is_google() {
$ip = $_SERVER['REMOTE_ADDR'];
$host = gethostbyaddr( $ip );
if ( strpos( $host, '.google.com' ) !== false || strpos( $host, '.googlebot.com' ) !== false ) {
$forward_lookup = gethostbyname( $host );
if ( $forward_lookup == $ip ) {
return true;
}
return false;
} else {
return false;
}
}
var_dump( is_google() );