Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Кол-во редиректов для файла robots.txt 3 слишком большое! Это может вызывать затруднение при индексации поисковыми роботами!
Проверяемая страница не запрещена в robots.txt.
Цепочка редиректов для файла robots.txt:
http://my.cloudme.com/robots.txt
301 MovedPermanently
https://my.cloudme.com/robots.txt
302 Found
https://my.cloudme.com/#robots.txt
200 OK
Показать содержимое robots.txt
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://www.w3.org/1999/xhtml" xmlns:dc="http://xcerion.com/directory.xsd" xmlns:ni="http://xcerion.com/noindex.xsd" xmlns:os="http://a9.com/-/spec/opensearch/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:og="http://ogp.me/ns#" scroll="no" style="height:100%">
<head>
<title>CloudMe - The European Sync / Storage Service</title>
<meta name="description" content="The Blue Folder Company - Your files online to share and access from anywhere."/>
<meta name="keywords" content="CloudMe, free online storage, backup, cloud storage, anywhere access, online file sharing, sharing, WebDAV, network drive, idisk, easy upload, cloudme sync, webshare, cloud drive, mobile access, Web Desktop, WebOS, WebTop, Blue Folder"/>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<script type="text/javascript">
var preventLogin = false;
</script>
<meta property="og:title" content="CloudMe"/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="https://my.cloudme.com/"/>
<meta property="og:image" content="https://cloudme.com/images/Symbol128.png"/>
<meta property="og:site_name" content="CloudMe"/>
<meta property="og:description" content="CloudMe - The Blue Folder Company"/>
<link href="/styles/webshare.css?v=2024091314" type="text/css" rel="stylesheet"/>
<link href="/styles/photoswipe.css?v=2024091314" type="text/css" rel="stylesheet" />
<link rel="shortcut icon" href="/favicon.ico"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="/jqueryui/jquery-ui-1.8.24.custom.min.js"></script>
<script>
if( $.browser.msie && $.browser.version.substr(0,1) < 9 ) {
$.fn.filterNode = function(name, attributeName, attributeValue) {
if( attributeName && attributeValue ) {
return this.find('*').filter(function() {
return (this.scopeName ? this.scopeName.toLowerCase() + ":" + this.nodeName.toLowerCase() : this.nodeName.toLowerCase() ) === name.toLowerCase() && this.attributes.getNamedItem(attributeName) !== null && this.attributes.getNamedItem(attributeName).value == attributeValue;
});
} else if( attributeName ) {
return this.find('*').filter(function() {
return (this.scopeName ? this.scopeName.toLowerCase() + ":" + this.nodeName.toLowerCase() : this.nodeName.toLowerCase() ) && this.attributes.getNamedItem(attributeName) !== null;
});
} else {
return this.find('*').filter(function() {
return (this.scopeName ? this.scopeName.toLowerCase() + ":" + this.nodeName.toLowerCase() : this.nodeName.toLowerCase() ) === name.toLowerCase();
});
}
};
} else {
$.fn.filterNode = function(name, attributeName, attributeValue) {
if( attributeName && attributeValue ) {
return this.find('*').filter(function() {
return this.nodeName.toLowerCase() === name.toLowerCase() && this.attributes.getNamedItem(attributeName) !== null && this.attributes.getNamedItem(attributeName).value == attributeValue;
});
} else if( attributeName ) {
return this.find('*').filter(function() {
return this.nodeName.toLowerCase() === name.toLowerCase() && this.attributes.getNamedItem(attributeName) !== null;
});
} else {
return this.find('*').filter(function() {
return this.nodeName.toLowerCase() === name.toLowerCase();
});
}
};
}
/**
* author Remy Sharp
* url http://remysharp.com/tag/marquee
*/
$.fn.marquee = function (klass) {
var newMarquee = [],
last = this.length;
// works out the left or right hand reset position, based on scroll
// behavior, current direction and new direction
function getReset(newDir, marqueeRedux, marqueeState) {
var behavior = marqueeState.behavior, width = marqueeState.width, dir = marqueeState.dir;
var r = 0;
if (behavior == 'alternate') {
r = newDir == 1 ? marqueeRedux[marqueeState.widthAxis] - (width*2) : width;
} else if (behavior == 'slide') {
if (newDir == -1) {
r = dir == -1 ? marqueeRedux[marqueeState.widthAxis] : width;
} else {
r = dir == -1 ? marqueeRedux[marqueeState.widthAxis] - (width*2) : 0;
}
} else {
r = newDir == -1 ? marqueeRedux[marqueeState.widthAxis] : 0;
}
return r;
}
// single "thread" animation
function animateMarquee() {
var i = newMarquee.length,
marqueeRedux = null,
$marqueeRedux = null,
marqueeState = {},
newMarqueeList = [],
hitedge = false;
while (i--) {
marqueeRedux = newMarquee[i];
$marqueeRedux = $(marqueeRedux);
marqueeState = $marqueeRedux.data('marqueeState');
if ($marqueeRedux.data('paused') !== true) {
// TODO read scrollamount, dir, behavior, loops and last from data
marqueeRedux[marqueeState.axis] += (marqueeState.scrollamount * marqueeState.dir);
// only true if it's hit the end
hitedge = marqueeState.dir == -1 ? marqueeRedux[marqueeState.axis] <= getReset(marqueeState.dir * -1, marqueeRedux, marqueeState) : marqueeRedux[marqueeState.axis] >= getReset(marqueeState.dir * -1, marqueeRedux, marqueeState);
if ((marqueeState.behavior == 'scroll' && marqueeState.last == marqueeRedux[marqueeState.axis]) || (marqueeState.behavior == 'alternate' && hitedge && marqueeState.last != -1) || (marqueeState.behavior == 'slide' && hitedge && marqueeState.last != -1)) {
if (marqueeState.behavior == 'alternate') {
marqueeState.dir *= -1; // flip
}
marqueeState.last = -1;
$marqueeRedux.trigger('stop');
marqueeState.loops--;
if (marqueeState.loops === 0) {
if (marqueeState.behavior != 'slide') {
marqueeRedux[marqueeState.axis] = getReset(marqueeState.dir, marqueeRedux, marqueeState);
} else {
// corrects the position
marqueeRedux[marqueeState.axis] = getReset(marqueeState.dir * -1, marqueeRedux, marqueeState);
}
$marqueeRedux.trigger('end');
} else {
// keep this marquee going
newMarqueeList.push(marqueeRedux);
$marqueeRedux.trigger('start');
marqueeRedux[marqueeState.axis] = getReset(marqueeState.dir, marqueeRedux, marqueeState);
}
} else {
newMarqueeList.push(marqueeRedux);
}
marqueeState.last = marqueeRedux[marqueeState.axis];
// store updated state only if we ran an animation
$marqueeRedux.data('marqueeState', marqueeState);
} else {
// even though it's paused, keep it in the list
newMarqueeList.push(marqueeRedux);
}
}
newMarquee = newMarqueeList;
if (newMarquee.length) {
setTimeout(animateMarquee, 25);
}
}
// TODO consider whether using .html() in the wrapping process could lead to loosing predefined events...
this.each(function (i) {
var $marquee = $(this),
width = $marquee.attr('width') || $marquee.width(),
height = $marquee.attr('height') || $marquee.height(),
$marqueeRedux = $marquee.after('<div ' + (klass ? 'class="' + klass + '" ' : '') + 'style="display: inline-block; width: ' + width + 'px; height: ' + height + 'px; overflow: hidden;"><div style="float: left; white-space: nowrap;">' + $marquee.html() + '</div></div>').next(),
marqueeRedux = $marqueeRedux.get(0),
hitedge = 0,
direction = ($marquee.attr('direction') || 'left').toLowerCase(),
marqueeState = {
dir : /down|right/.test(direction) ? -1 : 1,
axis : /left|right/.test(direction) ? 'scrollLeft' : 'scrollTop',
widthAxis : /left|right/.test(direction) ? 'scrollWidth' : 'scrollHeight',
last : -1,
loops : $marquee.attr('loop') || -1,
scrollamount : $marquee.attr('scrollamount') || this.scrollAmount || 2,
behavior : ($marquee.attr('behavior') || 'scroll').toLowerCase(),
width : /left|right/.test(direction) ? width : height
};
// corrects a bug in Firefox - the default loops for slide is -1
if ($marquee.attr('loop') == -1 && marqueeState.behavior == 'slide') {
marqueeState.loops = 1;
}
$marquee.remove();
// add padding
if (/left|right/.test(direction)) {
$marqueeRedux.find('> div').css('padding', '0 ' + width + 'px');
} else {
$marqueeRedux.find('> div').css('padding', height + 'px 0');
}
// events
$marqueeRedux.bind('stop', function () {
$marqueeRedux.data('paused', true);
}).bind('pause', function () {
$marqueeRedux.data('paused', true);
}).bind('start', function () {
$marqueeRedux.data('paused', false);
}).bind('unpause', function () {
$marqueeRedux.data('paused', false);
}).data('marqueeState', marqueeState); // finally: store the state
// todo - rerender event allowing us to do an ajax hit and redraw the marquee
newMarquee.push(marqueeRedux);
marqueeRedux[marqueeState.axis] = getReset(marqueeState.dir, marqueeRedux, marqueeState);
$marqueeRedux.trigger('start');
// on the very last marquee, trigger the animation
if (i+1 == last) {
animateMarquee();
}
});
return $(newMarquee);
};
var xiosPath = "http://os.cloudtop.com/";
if(!window.states) states = {};
states.host = "https://my.cloudme.com/v1/";
states.hostDomain = "https://my.cloudme.com/";
states.publicWebshare = true;
window.locationHref = window.location.href;
window.locationSearch = window.location.search;
window.locationProtocol = window.location.protocol;
window.locationHostname = window.location.hostname;
window.locationPort = window.location.port;
window.locationPathname = window.location.pathname;
$.browser.chrome = $.browser.webkit && !!window.chrome;
$.browser.safari = $.browser.webkit && !window.chrome;
var cloudme = $;
var clientOS = "win";
var clientBrowser = "chrome";
var clientBrowserVersion = "126.0.0.0";
var clientIsMobile = clientOS.search(/ios|android/) > -1;
window.rootUri = window.location.protocol + "//" + window.location.host + "/"; //'https://my.mycloud.com/';
</script>
<script type="text/javascript" src="https://www.cloudme.com/webui/js/jquery.ba-hashchange.js?v=2024091314"></script>
<script type="text/javascript" src="/js/cloudme-webshares-base-2024091314.js"></script>
<script type="text/javascript" src="/js/cloudme-webshares-2024091314.js"></script>
<script type="text/javascript" src="/js/klass.min.js"></script>
<script type="text/javascript" src="/js/code.photoswipe.jquery-3.0.4.min.js"></script>
<script defer="defer" type="text/javascript" src="/scripts/jquery.plugins.js?v=2024091314"></script>
<!-- <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> -->
<!-- <script type="text/javascript" src="/swfupload/swfupload.js?v=2024091314"></script>
<script type="text/javascript" src="/swfupload/swfupload.swfobject.js?v=2024091314"></script>
<script type="text/javascript" src="/swfupload/swfupload.queue.js?v=2024091314"></script> -->
<script type="text/javascript" src="/jplayer/jquery.jplayer.js?v=2024091314"></script>
<link rel="stylesheet" href="/jplayer/Jplayer.css?v=2024091314" type="text/css" />
<link rel="stylesheet" href="/jplayer/jplayer.blue.monday.css?v=2024091314" type="text/css" />
<link rel="stylesheet" href="/jqueryui/jquery-ui-1.8.24.custom.css?v=2024091314" type="text/css" />
<script type="text/javascript">
/* var states = {
homeFolderId: 0,
currentFolderId: 0,
currentDriveId: 0,
history: [],
cloudMeAPIStatus : "",
username : "",
host : "https://my.cloudme.com/v1/",
hostDomain : "https://my.cloudme.com/",
hostDownloadZip : "https://my.cloudme.com:443/v1/downloadzip/",
userId : 0,
userEntry : null,
userCountry : "",
drives : "",
xiosId : "",
homeDriveId : "",
sessionkey : "",
fullname : "",
currentFolders : null,
currentFiles : null,
currentSize : 0,
quotaLimit : 0,
pollOftenUntil : 0,
nextPolltime : 0,
paginering : {},
activeTab : "",
mycloudme : "",
currentOpenWebShare : -1,
debug : false,
favorites : {},
syncs : {},
clouddrive : {fixedFolders : {}, upload : {}}
};*/
var staticRoot = '/'//'/webshares/templates/webshare_files/';
var authenticated = false;
var cloudmeURI = "https://my.cloudme.com/";
var ie8 = false;
$(function() {
function callback() {
function success(states) {
window.states = states;
new Dispatcher().init(true);
};
function failure() {
new Dispatcher().init();
};
com.login(true).done(success).fail(failure);
};
function errback() {
console.log("CloudMeAPI failed");
};
//initCloudMeAPI(callback, errback);
new Dispatcher().init();
});
</script>
<!--<script type="text/javascript" id="cloudmeLoader" src="https://www.cloudme.com/webui/js/jqueryloader.js?v=2024091314"></script>-->
<script type="text/javascript" id="cloudmeLoader" src="templates/webshare_files/jqueryloader.js?v=2024091314"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-12526558-1', 'auto');
ga('send', 'pageview');
</script> <!-- start Mixpanel <script type="text/javascript">
setTimeout(function () {
(function(f,b){if(!b.__SV){var a,e,i,g;window.mixpanel=b;b._i=[];b.init=function(a,e,d){function f(b,h){var a=h.split(".");2==a.length&&(b=b[a[0]],h=a[1]);b[h]=function(){b.push([h].concat(Array.prototype.slice.call(arguments,0)))}}var c=b;"undefined"!==typeof d?c=b[d]=[]:d="mixpanel";c.people=c.people||[];c.toString=function(b){var a="mixpanel";"mixpanel"!==d&&(a+="."+d);b||(a+=" (stub)");return a};c.people.toString=function(){return c.toString(1)+".people (stub)"};i="disable track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.union people.track_charge people.clear_charges people.delete_user".split(" ");
for(g=0;g<i.length;g++)f(c,i[g]);b._i.push([a,e,d])};b.__SV=1.2;a=f.createElement("script");a.type="text/javascript";a.async=!0;a.src="undefined"!==typeof MIXPANEL_CUSTOM_LIB_URL?MIXPANEL_CUSTOM_LIB_URL:"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js";e=f.getElementsByTagName("script")[0];e.parentNode.insertBefore(a,e)}})(document,window.mixpanel||[]);
mixpanel.init("cd6327dbf653c2e55d02380639645f2a");
}, 3000);
function mixPanel(a1, a2) {
setTimeout(function () {
mixpanel.track(a1, a2);
}, 4000);
};
</script><!-- end Mixpanel -->
<style>
span#ts_name {
position: absolute;
left: 100px;
top: 0px;
width: auto!important;
min-width: 0;
white-space: nowrap; /*This line added*/
}
</style>
</head>
<body scroll="no" onload="window.focus();" onresize="" class="webshareroot chrome" style="min-height:100%">
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
</body>
</html>