Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Кол-во редиректов для файла robots.txt 5 слишком большое! Это может вызывать затруднение при индексации поисковыми роботами!
Проверяемая страница не запрещена в robots.txt.
Цепочка редиректов для файла robots.txt:
http://analytics.constellix.com/robots.txt
301 MovedPermanently
https://analytics.constellix.com/robots.txt
302 Found
https://analytics.constellix.com/login
302 Found
https://auth.constellix.com/oauth/authorize?client_id=constellix_rta&redirect_uri=https://analytics.constellix.com/login&response_type=code&state=5YUHEH
302 Found
https://auth.constellix.com/login
200 OK
Показать содержимое robots.txt
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="description" content="Log into the Constellix suite"/>
<meta name="author" content="Tiggee, LLC"/>
<link rel="icon" href="/static/img/favicon.ico"/>
<title>Constellix | Login</title>
<!-- Bootstrap Core CSS -->
<link href="/static/css/bootstrap.min.css" rel="stylesheet"/>
<!-- Custom CSS -->
<link href="/static/css/login-style.css" rel="stylesheet"/>
<!-- Custom Fonts -->
<link href="/static/css/font-awesome.min.css" rel="stylesheet"/>
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<script src="https://www.google.com/recaptcha/api.js" async="async" defer="defer"></script>
</head>
<body>
<!-- Nav -->
<section id="nav">
<div class="container-fluid">
<div class="row">
<!-- Console Navigation -->
<div class="col-xs-9">
<div class="btn-group">
<img src="/static/img/constellix-login-logo.png" alt="Constellix logo" class="img-responsive"/>
</div>
</div>
<div class="col-xs-3">
<!-- <a th:href="${managementRegistrationPage}">-->
<!-- <button class="btn">Create an Account</button>-->
<!-- </a>-->
</div>
</div>
</div>
</section>
<!-- Nav END -->
<!-- Inner content -->
<section id="inner">
<div class="container-fluid">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<h1>Constellix Login</h1>
<h2>Log into the entire Constellix suite here.</h2>
</div>
</div>
<div class="row">
<div class="col-md-6 col-md-offset-3">
<form method="POST" id="loginForm">
<div class="container-fluid">
<div class="row">
<div class="col-md-8 col-md-offset-2">
</div>
</div>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div id="form-carousel" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="item active">
<div class="container-fluid">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="form-group has-feedback" id="usernameBlock">
<label class="control-label" for="username">Username</label>
<input type="text" class="form-control" id="username"
name="username" required="required"
autofocus="autofocus"/>
<span class="glyphicon glyphicon-user form-control-feedback"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="form-group">
<button type="button" class="btn" id="routeLogin"
disabled="disabled">Next
</button>
</div>
</div>
</div>
</div>
</div>
<div class="item">
<div class="container-fluid">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="form-group has-feedback" id="passwordBlock">
<label class="control-label" for="password">Password</label>
<input type="password" class="form-control" id="password"
name="password" required="required"/>
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="form-group has-feedback" id="multiFactorAuthBlock">
<label class="control-label" for="timeBasedOneTimePassword">Two-Factor
Authentication</label>
<input type="text" class="form-control"
id="timeBasedOneTimePassword"
name="timeBasedOneTimePassword" autocomplete="off"/>
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-10 col-md-offset-1">
</div>
</div>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<p>Logging in as: <span id="loggingInAs"></span></b></p>
</div>
</div>
<div class="row">
<div class="col-md-5 col-md-offset-1">
<div class="form-group">
<button type="button" class="btn" href="#" id="backButton">
Back
</button>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<button type="submit" class="btn" href="#" id="loginButton"
disabled="disabled">Login
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<input type="hidden"
name="_csrf"
value="a5e887c1-f82a-4dc9-86e9-f8d1107a721f"/>
</div>
</div>
</div>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<p class="text-center"><a href="https://manage.constellix.com/forgot">Forgot your
username or password?</a></p>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
<!-- Inner END -->
<!-- Footer-->
<section id="footer">
<div class="container-fluid">
<div class="row">
<div class="col-lg-6 col-lg-offset-3">
<p>Copyright <span id="copyright"></span> Constellix | <a
href="https://constellix.com/pdf/PrivacyPolicy-constellix.pdf">Privacy Policy</a> | All Rights
Reserved</p>
<p>
<a href="https://www.facebook.com/Constellix/" target="_blank"><i class="fa fa-facebook"></i></a>
<a href="https://twitter.com/Constellix" target="_blank"><i class="fa fa-twitter"></i></a>
<a href="https://www.linkedin.com/company/constellix" target="_blank"><i class="fa fa-linkedin"></i></a>
</p>
</div>
</div>
</div>
</section>
<!-- Footer END -->
<!-- jQuery -->
<script src="/static/js/jquery.min.js"></script>
<!-- Bootstrap Core JavaScript -->
<script src="/static/js/bootstrap.min.js"></script>
<script src="/static/js/validator.js"></script>
<script src="/static/js/jquery.serialize-object.min.js"></script>
<script type="text/javascript">
$('#toggleMultiFactorAuth').click(function (event) {
if ($("#multiFactorAuthBlock").is(":visible")) {
$("#multiFactorAuthBlock").toggle();
$("#loginButton").focus();
$(this).html("Multi-factor authentication enabled?");
} else {
$("#multiFactorAuthBlock").toggle();
$("#timeBasedOneTimePassword").focus();
$(this).html("Multi-factor authentication disabled?");
}
});
$("#username").keyup(function (event) {
if (event.keyCode === 13) {
event.preventDefault();
$("#routeLogin").click();
}
});
</script>
<script type="text/javascript">
$(function () {
setTimeout(() => window.location = "https://constellix.com", 600000)
});
</script>
<script type="text/javascript">
$('#copyright').text(new Date().getFullYear())
</script>
<script type="text/javascript">
let username;
let carouselPosition = 0;
$('.carousel').carousel({
interval: false,
});
$('#routeLogin').click(function (event) {
username = $('#username').val();
var csrfToken = $("input[name='_csrf']").val();
$.ajax({
url: '/rest/authenticate/loginInfo/' + username,
type: 'GET',
beforeSend: function (xhr) {
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader('X-CSRF-Token', csrfToken);
},
dataType: "json",
success: function (data, textStatus, jqXHR) {
if (data.saml) {
$("#loginForm").attr("action", "/saml");
$("#loginForm").submit();
} else {
if (data.mfa) {
$("#multiFactorAuthBlock").show();
} else {
$("#multiFactorAuthBlock").hide();
}
$("#loginForm").attr("action", "/login");
$('#loggingInAs').html(username);
$('#loggingInAs').css('font-weight', 'Bold');
$('.carousel').carousel('next');
carouselPosition = 1;
if ($('#password').val().trim() != '') {
$('#loginButton').prop('disabled', false);
}
setTimeout(function () {
$('#password').get(0).focus();
}, 650);
}
},
error: function (data, textStatus, jqXHR) {
$('#nav-alert-danger').show();
$('#nav-alert-danger').html('<p>' + data.responseJSON.message + '</p>');
// $('#nav-alert-danger').fadeOut(1500);
}
});
});
$('#backButton').click(function (event) {
username = '';
$('#username').val('');
$('#password').val('');
$('#timeBasedOneTimePassword').val('');
$('#routeLogin').prop('disabled', true);
$('#loginButton').prop('disabled', true);
$('.carousel').carousel('prev');
carouselPosition = 0;
setTimeout(function () {
$('#username').get(0).focus();
}, 650);
});
$('#username').on('keyup change', function () {
let routeLoginBtn = $('#routeLogin');
let btnDisabled = routeLoginBtn.prop('disabled');
if ($('#username').val().trim() == '') {
if (!btnDisabled) {
routeLoginBtn.prop('disabled', true);
}
} else {
if (btnDisabled) {
routeLoginBtn.prop('disabled', false);
}
}
});
$('#password').on('keyup change', function () {
let loginBtn = $('#loginButton');
let btnDisabled = loginBtn.prop('disabled');
if ($('#password').val().trim() == '') {
if (!btnDisabled) {
loginBtn.prop('disabled', true);
}
} else {
if (btnDisabled && carouselPosition == 1) {
loginBtn.prop('disabled', false);
}
}
});
$(document).ready(function () {
if ($('#username').val().trim() != '') {
$('#routeLogin').prop('disabled', false);
}
});
</script>
<!-- Google Analytics Start -->
<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-46535467-1', 'auto');
ga('send', 'pageview');
</script>
<!-- Google Analytics End -->
</body>
</html>