Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Кол-во редиректов для файла robots.txt 3 слишком большое! Это может вызывать затруднение при индексации поисковыми роботами!
Проверяемая страница не запрещена в robots.txt.
Цепочка редиректов для файла robots.txt:
http://max.applovin.com/robots.txt
308 PermanentRedirect
https://max.applovin.com/robots.txt
302 Found
https://max.applovin.com/login
200 OK
Показать содержимое robots.txt
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="stylesheet" href="/assets/corporate/css/normalize.min.css?v=7">
<link rel="stylesheet" href="/assets/corporate/css/main.css?v=7">
<link rel="stylesheet" href="/assets/corporate/css/myfonts.css?v=7">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js?v=1"></script>
<script src="/assets/noty/js/jquery.noty.js?v=1"></script>
<script src="/assets/corporate/js/modernizr-2.6.2.min.js?v=1"></script>
<script src="/dashboard/loadGTM?ts=1787608288"></script>
<!-- cookie consent -->
<!-- <script src="/dashboard/js?t=--><!--&ts=--><!--"></script>-->
<link rel="shortcut icon" type="image/png/ico" href="/favicon.ico?v=4"/>
<title>AppLovin Max</title>
<meta name="description" content="Sign in for AppLovin here and start to leverage the massive reach and proven ROI of our Adaptive Personalization Platform.">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap">
<link rel="preload" as="font" type="font/woff2" crossorigin href="https://cms-assets.axon.ai/Mont_Regular_normal_normal_aab08145a9/Mont_Regular_normal_normal_aab08145a9.woff2">
<link rel="preload" as="font" type="font/woff2" crossorigin href="https://cms-assets.axon.ai/Mont_Semi_Bold_normal_normal_7195e7fa59/Mont_Semi_Bold_normal_normal_7195e7fa59.woff2">
<link rel="preload" as="script" media="(min-width: 900px)" href="/assets/react/branding-bg/js/branding-bg.chunk.js">
<style>
@font-face{font-family:Mont;font-weight:400;font-style:normal;font-display:swap;src:url(https://cms-assets.axon.ai/Mont_Regular_normal_normal_aab08145a9/Mont_Regular_normal_normal_aab08145a9.woff2) format('woff2');}
@font-face{font-family:Mont;font-weight:500;font-style:normal;font-display:swap;src:url(https://cms-assets.axon.ai/Mont_Semi_Bold_normal_normal_7195e7fa59/Mont_Semi_Bold_normal_normal_7195e7fa59.woff2) format('woff2');}
</style>
</head>
<body class="dynamicHeight">
<script type="text/javascript" src="https://www.recaptcha.net/recaptcha/api.js?render=6Lea31krAAAAANMeYQBZqsrwS0LhJ-Xt129KYRcS"></script>
<script src="https://cdn.jsdelivr.net/npm/@castleio/castle-js@2.6.2/dist/castle.browser.min.js"></script>
<script>
Castle.configure({ pk: "pk_uEKrJRzpVfsGCuMuATNCqsLcZ7zTaVFz" });
Castle.page();
</script>
<div id='auth-app' data-react='{"app":"login","skipRecaptcha":false,"recaptchaSiteKey":"6Lea31krAAAAANMeYQBZqsrwS0LhJ-Xt129KYRcS","oktaSsoEnabled":true,"cc":"","message":null,"csrfToken":"JmFfSoX7UK75HJsYu31I5l4B9jLlxnUrSXb9RFipMCTLtfWR","doLoginUrl":"\/login\/doLogin","oktaAuthUrl":"\/login\/getOktaAuthorizationUrl"}'></div><script type='text/javascript' src='/assets/react/66a36e77fd/js/66a36e77fd.bundle.js.LICENSE.txt?m=1787552333'></script><script type='text/javascript' src='/assets/react/66a36e77fd/js/66a36e77fd.bundle.js?m=1787552333'></script>
<script type="text/javascript">
AppLovinWrapperStub = function () {
const DocumentUtils = {
getDocumentHeight: function () {
const body = document.body;
const html = document.documentElement;
return Math.max(body.scrollHeight, body.offsetHeight,
html.clientHeight, html.scrollHeight, html.offsetHeight);
},
getDocumentLocation: function () {
return window.location;
}
};
const WrapperDispatcher = {
dispatchRedirectToLogin: function () {
this.dispatchMessage({
type: "redirect_to_login"
});
},
dispatchRedirectToLanding: function () {
this.dispatchMessage({
type: "redirect_to_landing"
});
},
dispatchFrameLoaded: function () {
this.dispatchMessage({
type: "loaded"
});
},
dispatchFramePreloaded: function () {
this.dispatchMessage({
type: "preloaded"
});
},
dispatchHeightChange: function (newHeight) {
this.dispatchMessage({
type: "height_change",
height: newHeight
});
},
dispatchShowNotification: function (notificationMessage, notificationType) {
this.dispatchMessage({
type: "show_notification",
notificationType: notificationType,
notificationMessage: notificationMessage,
});
},
dispatchLocationChange: function (newLocation) {
this.dispatchMessage({
type: "location_change",
location: newLocation
});
},
dispatchLocationChangeWithoutSectionChange: function (newLocation) {
this.dispatchMessage({
type: "location_change_no_section_change",
location: newLocation
})
},
dispatchMessage: function (message) {
if (window.top) {
window.top.postMessage(message, "*");
}
}
};
const WrapperReceiver = {
attach: function () {
const self = this;
const receiveMessage = function (event) {
// Check event origin. Both the legacy dash.* and new max.* hosts are
const allowedOrigins = [
// max.* hosts
"https://max.applovin.com",
"https://stage-max.applovin.com",
"https://max.dev-applovin.com",
// legacy dash.* hosts
"https://dash.applovin.com",
"https://stage-dash.applovin.com",
"https://dash.dev-applovin.com"
];
if (allowedOrigins.indexOf(event.origin) === -1 &&
!event.origin.startsWith("http://localhost")) {
return;
}
// Detect source frame
const sourceWindow = event.source;
if (sourceWindow !== window.parent) {
return;
}
self.processMessage(event.data)
};
window.addEventListener("message", receiveMessage, false);
},
processMessage: function (message) {
const type = message.type;
console.log("Parent window: " + type);
console.warn("Ignoring parent frame event: " + type);
},
};
(function() {
const oldLocation = DocumentUtils.getDocumentLocation();
let oldHash = oldLocation.hash;
let oldSearch = oldLocation.search;
let oldPathName = oldLocation.pathname;
const messageTypes = {
LOCATION_CHANGE: 'location_change',
HASH_CHANGE: 'hash_change',
SEARCH_CHANGE: 'search_change'
};
$(window).load(function () {
WrapperReceiver.attach();
WrapperDispatcher.dispatchFrameLoaded();
WrapperDispatcher.dispatchHeightChange();
let oldHeight = DocumentUtils.getDocumentHeight();
const checkDocumentProperties = function () {
const newHeight = DocumentUtils.getDocumentHeight();
if (oldHeight !== newHeight) {
WrapperDispatcher.dispatchHeightChange(newHeight);
oldHeight = newHeight;
}
const newLocation = DocumentUtils.getDocumentLocation();
const newHash = newLocation.hash;
const newSearch = newLocation.search;
const newPathName = newLocation.pathname;
let shouldDispatchMessage = false;
let dispatchMessageType = '';
if (newHash !== oldHash) {
shouldDispatchMessage = true;
oldHash = newHash;
dispatchMessageType = messageTypes.HASH_CHANGE;
}
if (newSearch != oldSearch) {
shouldDispatchMessage = true;
oldSearch = newSearch;
dispatchMessageType = messageTypes.SEARCH_CHANGE;
}
if (newPathName != oldPathName) {
shouldDispatchMessage = true;
oldPathName = newPathName;
dispatchMessageType = messageTypes.LOCATION_CHANGE;
}
if (shouldDispatchMessage) {
switch (dispatchMessageType)
{
case messageTypes.LOCATION_CHANGE:
WrapperDispatcher.dispatchLocationChange({
pathname: newLocation.pathname,
search: newLocation.search,
hash: newLocation.hash
});
break;
case messageTypes.SEARCH_CHANGE:
case messageTypes.HASH_CHANGE:
WrapperDispatcher.dispatchLocationChangeWithoutSectionChange({
pathname: newLocation.pathname,
search: newLocation.search,
hash: newLocation.hash
});
break;
}
}
};
// Update document properties periodically
window.setInterval(checkDocumentProperties, 200);
});
}());
WrapperDispatcher.dispatchFramePreloaded();
return {
redirectToLogin: function() {
WrapperDispatcher.dispatchRedirectToLogin();
},
redirectToLanding: function() {
WrapperDispatcher.dispatchRedirectToLanding();
},
showSuccessNotification: function (notificationMessage) {
WrapperDispatcher.dispatchShowNotification(notificationMessage, 'SUCCESS');
},
showErrorNotification: function (notificationMessage) {
WrapperDispatcher.dispatchShowNotification(notificationMessage, 'ERROR');
}
};
}();
</script>
<script type="text/javascript">
if ( AppLovinWrapperStub )
{
AppLovinWrapperStub.redirectToLogin();
}
</script>
<script type="text/javascript">
// Start of Woopra Code
/**
* This callback is displayed as part of the woopra handler.
*
* @callback woopraCallback
*/
/**
* Handles woopra track when a callback is used to execute callback even if woopra fails.
* @param {string} eventName - The name of the event that you are tracking.
* @param {Object} woopraData - An object of any properties you want to track with the event.
* @param {woopraCallback} woopraCallback - Callback function called when woopra.track returns.
*/
function woopraTrackHandler(eventName, woopraData, woopraCallback) {
if (typeof(woopraTracker) === "object") { // check if woopra is loaded
if (typeof(woopraCallback) === "function") {
var woopraTimeout = setTimeout( // allow 3 seconds for woopra to return otherwise call callback manually
function () {
woopraTimeout = null;
woopraCallback();
}
, 3000
);
woopra.track(
eventName
, woopraData
, function () {
if (woopraTimeout !== null) {
clearTimeout(woopraTimeout);
woopraTimeout = null;
woopraCallback()
}
}
);
} else {
woopra.track(
eventName
, woopraData
);
}
} else {
if (typeof(woopraCallback) === 'function') {
woopraCallback();
}
}
}
// End of Woopra Code
// pass a token with every request to prevent CSRF
var crsftoken = "JmFfSoX7UK75HJsYu31I5l4B9jLlxnUrSXb9RFipMCTLtfWR";
$.ajaxSetup({
headers: {
'X-CSRF-Token': crsftoken
}
});
(function() {
var utmRegExp = /(utm_[A-Za-z]+|cc)=[A-Za-z0-9]+/gi,
links = document.getElementsByTagName("a"),
utms = document.location.search.length > 0 ? document.location.search.match(utmRegExp) : [],
currentDomain = document.location.protocol + '//' + document.location.host;
if (!utms || utms.length === 0) return;
for (var index = 0; index < links.length; index += 1) {
let tempLink = links[index].href,
tempParts;
if (!(
tempLink.indexOf(currentDomain) === 0
|| tempLink.indexOf('https://www.applovin.com') === 0
)) {
continue
}
tempLink = tempLink.replace(utmRegExp, "");
tempParts = tempLink.split("#");
if (tempParts[0].indexOf("?") < 0) {
tempParts[0] += "?" + utms.join("&"); // The script adds UTM parameters to all links with the domain you've defined
} else {
tempParts[0] += "&" + utms.join("&");
}
tempLink = tempParts.join("#");
links[index].href = tempLink;
}
}());
</script>
</body>
</html>