BunnyCDN-AMS1-1056
tcp/443 tcp/80
BunnyCDN-AMS1-883
tcp/443 tcp/80
Open service 51.158.131.227:80 · auth.stage.tactic-connect.com
2026-01-11 09:53
HTTP/1.1 308 Permanent Redirect Date: Sun, 11 Jan 2026 09:53:25 GMT Content-Type: text/html Content-Length: 164 Connection: close Location: https://auth.stage.tactic-connect.com Page title: 308 Permanent Redirect <html> <head><title>308 Permanent Redirect</title></head> <body> <center><h1>308 Permanent Redirect</h1></center> <hr><center>nginx</center> </body> </html>
Open service 51.158.131.227:443 · auth.stage.tactic-connect.com
2026-01-11 09:53
HTTP/1.1 302 Found Date: Sun, 11 Jan 2026 09:53:25 GMT Content-Length: 0 Connection: close Location: https://auth.stage.perma-connect.com/admin/ Referrer-Policy: no-referrer Strict-Transport-Security: max-age=31536000; includeSubDomains X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block
Open service 84.17.46.49:443 · tactic-connect.com
2026-01-08 04:06
HTTP/1.1 200 OK
Date: Thu, 08 Jan 2026 04:06:10 GMT
Content-Type: text/html
Content-Length: 3710
Connection: close
Vary: Accept-Encoding
Server: BunnyCDN-AMS1-1056
CDN-PullZone: 2513462
CDN-RequestCountryCode: US
Cache-Control: public, max-age=2592000
ETag: "e7e-645aa92910b80"
Last-Modified: Thu, 11 Dec 2025 10:26:06 GMT
Strict-Transport-Security: max-age=31536000; includeSubDomains
CDN-ProxyVer: 1.43
CDN-RequestPullSuccess: True
CDN-RequestPullCode: 200
CDN-CachedAt: 01/03/2026 15:04:59
CDN-EdgeStorageId: 879
CDN-RequestId: 561cf07e51e3a76606ea29cfcdbc7d58
CDN-Cache: HIT
CDN-Status: 200
CDN-RequestTime: 0
Accept-Ranges: bytes
Page title: Lubrication Maintenance
<!DOCTYPE html>
<html>
<head>
<!--
If you are serving your web app in a path other than the root, change the
href value below to reflect the base path you are serving from.
The path provided below has to start and end with a slash "/" in order for
it to work correctly.
For more details:
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
This is a placeholder for base href that will be replaced by the value of
the `--base-href` argument provided to `flutter build`.
-->
<base href="/">
<meta charset="UTF-8">
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<!-- iOS meta tags & icons -->
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon" >
<!-- Favicon -->
<link rel="icon" type="image/png"/>
<title>Lubrication Maintenance</title>
<script>
// The value below is injected by flutter build, do not touch.
var dartPdfJsVersion = "3.2.146";
</script>
<script src="flutter.js" defer></script>
<style>
.loading {
display: flex;
flex-flow: column;
justify-content: center;
align-items: center;
margin: 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.loader {
border: 1px solid #f3f3f3;
border-radius: 50%;
border-top: 3px solid #989898;
border-right: 3px solid #989898;
border-bottom: 3px solid #989898;
border-left: 3px solid #FFFFFF;
width: 48px !important;
height: 48px !important;
-webkit-animation: spin 1s linear infinite;
animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
</style>
</head>
<body>
<!-- First time loading -->
<div class="loading">
<div class="loader"></div>
<small style="color:#989898; padding-top: 40px; font-family: sans-serif;">Loading app...</small>
</div>
<!-- Ensure first time loading progress is gone after app loads -->
<script>
window.addEventListener("flutter-first-frame", function() {
var element = document.getElementsByClassName("loading");
element[0].parentNode.removeChild(element[0]);
});
</script>
<!-- This stops Flutter from loading canvaskit via gstatic and instead uses its own files -->
<script>
window.flutterConfiguration = {
canvasKitBaseUrl: "/canvaskit/"
};
</script>
<script>
window.addEventListener('load', function (ev) {
var now = new Date().getTime();
fetch("/index.html?v=" + now).then(function (response) {
var etag = response.headers.get("Etag");
// Download main.dart.js
console.log('etag: ' + etag);
_flutter.loader.loadEntrypoint({
entrypointUrl: "main.dart.js?v=" + etag,
}).then(function (engineInitializer) {
return engineInitializer.initializeEngine();
}).then(function (appRunner) {
return appRunner.runApp();
});
});
});
</script>
<script type="text/javascript" src="https://unpkg.com/@zxing/library@0.19.1/umd/index.min.js"></script>
</body>
</html><!-- Thu Dec 11 10:26:06 UTC 2025 -->
Open service 2400:52e0:1e01::883:1:443 · tactic-connect.com
2026-01-08 04:06
HTTP/1.1 200 OK
Date: Thu, 08 Jan 2026 04:06:12 GMT
Content-Type: text/html
Content-Length: 3710
Connection: close
Vary: Accept-Encoding
Server: BunnyCDN-AMS1-883
CDN-PullZone: 2513462
CDN-RequestCountryCode: SG
Cache-Control: public, max-age=2592000
ETag: "e7e-645aa92910b80"
Last-Modified: Thu, 11 Dec 2025 10:26:06 GMT
Strict-Transport-Security: max-age=31536000; includeSubDomains
CDN-ProxyVer: 1.43
CDN-RequestPullSuccess: True
CDN-RequestPullCode: 200
CDN-CachedAt: 01/03/2026 15:04:59
CDN-EdgeStorageId: 879
CDN-RequestId: c984b08b2a65ebf5da85166751f5a8a2
CDN-Cache: HIT
CDN-Status: 200
CDN-RequestTime: 0
Accept-Ranges: bytes
Page title: Lubrication Maintenance
<!DOCTYPE html>
<html>
<head>
<!--
If you are serving your web app in a path other than the root, change the
href value below to reflect the base path you are serving from.
The path provided below has to start and end with a slash "/" in order for
it to work correctly.
For more details:
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
This is a placeholder for base href that will be replaced by the value of
the `--base-href` argument provided to `flutter build`.
-->
<base href="/">
<meta charset="UTF-8">
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<!-- iOS meta tags & icons -->
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon" >
<!-- Favicon -->
<link rel="icon" type="image/png"/>
<title>Lubrication Maintenance</title>
<script>
// The value below is injected by flutter build, do not touch.
var dartPdfJsVersion = "3.2.146";
</script>
<script src="flutter.js" defer></script>
<style>
.loading {
display: flex;
flex-flow: column;
justify-content: center;
align-items: center;
margin: 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.loader {
border: 1px solid #f3f3f3;
border-radius: 50%;
border-top: 3px solid #989898;
border-right: 3px solid #989898;
border-bottom: 3px solid #989898;
border-left: 3px solid #FFFFFF;
width: 48px !important;
height: 48px !important;
-webkit-animation: spin 1s linear infinite;
animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
</style>
</head>
<body>
<!-- First time loading -->
<div class="loading">
<div class="loader"></div>
<small style="color:#989898; padding-top: 40px; font-family: sans-serif;">Loading app...</small>
</div>
<!-- Ensure first time loading progress is gone after app loads -->
<script>
window.addEventListener("flutter-first-frame", function() {
var element = document.getElementsByClassName("loading");
element[0].parentNode.removeChild(element[0]);
});
</script>
<!-- This stops Flutter from loading canvaskit via gstatic and instead uses its own files -->
<script>
window.flutterConfiguration = {
canvasKitBaseUrl: "/canvaskit/"
};
</script>
<script>
window.addEventListener('load', function (ev) {
var now = new Date().getTime();
fetch("/index.html?v=" + now).then(function (response) {
var etag = response.headers.get("Etag");
// Download main.dart.js
console.log('etag: ' + etag);
_flutter.loader.loadEntrypoint({
entrypointUrl: "main.dart.js?v=" + etag,
}).then(function (engineInitializer) {
return engineInitializer.initializeEngine();
}).then(function (appRunner) {
return appRunner.runApp();
});
});
});
</script>
<script type="text/javascript" src="https://unpkg.com/@zxing/library@0.19.1/umd/index.min.js"></script>
</body>
</html><!-- Thu Dec 11 10:26:06 UTC 2025 -->
Open service 84.17.46.49:80 · tactic-connect.com
2026-01-08 04:06
HTTP/1.1 301 Moved Permanently Date: Thu, 08 Jan 2026 04:06:10 GMT Content-Type: text/html Content-Length: 166 Connection: close Server: BunnyCDN-AMS1-1056 CDN-PullZone: 2513462 CDN-RequestCountryCode: US Location: https://tactic-connect.com/ CDN-RequestId: c42db0c17c46c769ace3dbb6e4da5b15 CDN-RequestTime: 0 Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>openresty</center> </body> </html>
Open service 2400:52e0:1e01::883:1:80 · tactic-connect.com
2026-01-08 04:06
HTTP/1.1 301 Moved Permanently Date: Thu, 08 Jan 2026 04:06:09 GMT Content-Type: text/html Content-Length: 166 Connection: close Server: BunnyCDN-AMS1-883 CDN-PullZone: 2513462 CDN-RequestCountryCode: DE Location: https://tactic-connect.com/ CDN-RequestId: 9a15c10a7bff3f8511489f1fbccec289 CDN-RequestTime: 0 Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>openresty</center> </body> </html>