Infrastructure
· 9 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.BCrawlabilityrobots.txt present, sitemap with 0 URLsREVIEW
Search engines may not be able to parse the sitemap. Fix XML validation errors.
An unparseable sitemap is silently ignored by Google — the URLs it advertises are never queued for crawl.
Learn more ▾ ▴
Google's sitemap parser is strict about XML validity. A single unescaped `&` or unclosed tag invalidates the whole file. Run your sitemap through a validator (Search Console's Sitemaps report flags it) and fix the offending entry. Most generators escape correctly; mistakes usually come from manually-written entries.
Source: sitemaps.org / Google Search Central
An empty sitemap provides no value. Add <url> entries for your pages.
An empty sitemap signals 'no content to index' to Google — actively harmful versus having no sitemap at all.
Learn more ▾ ▴
Google compares URLs in the sitemap against URLs it has crawled. An empty sitemap on a site with thousands of pages signals abandonment. Either populate it correctly (most CMSes auto-generate) or delete the file and let Google crawl normally.
Source: Google Search Central / sitemaps.org
# Standard user agents
User-agent: *
# CSS, JS, Images
Allow: /core/*.css$
Allow: /core/*.css?
Allow: /core/*.js$
Allow: /core/*.js?
Allow: /core/*.gif
Allow: /core/*.jpg
Allow: /core/*.jpeg
Allow: /core/*.png
Allow: /core/*.svg
# Directories
Disallow: /core/
# Files
Disallow: /README.txt
Disallow: /web.config
# Paths (clean URLs)
Disallow: /admin/
Disallow: /comment/reply/
Disallow: /filter/tips
Disallow: /node/add/
Disallow: /search/
Disallow: /webview
Disallow: /user/register
Disallow: /user/password
Disallow: /user/login
Disallow: /user/logout
# Paths (no clean URLs)
Disallow: /index.php/admin/
Disallow: /index.php/comment/reply/
Disallow: /index.php/filter/tips
Disallow: /index.php/node/add/
Disallow: /index.php/search/
Disallow: /index.php/user/password
Disallow: /index.php/user/register
Disallow: /index.php/user/login
Disallow: /index.php/user/logout
# Directories
Disallow: /includes/
Disallow: /core/
Disallow: /misc/
Disallow: /modules/
# Files
Disallow: /CHANGELOG.txt
Disallow: /cron.php
Disallow: /INSTALL.mysql.txt
Disallow: /INSTALL.pgsql.txt
Disallow: /install.php
Disallow: /INSTALL.txt
Disallow: /LICENSE.txt
Disallow: /MAINTAINERS.txt
Disallow: /update.php
Disallow: /UPGRADE.txt
Disallow: /xmlrpc.php
# Paths (clean URLs)
Disallow: /saml_login
Disallow: /simplesaml
Disallow: /imce
# Paths (no clean URLs)
Disallow: /?q=*
Disallow: /nst-fa/
Disallow: /index.php
Disallow: /index.php/*
# old/migrated file sources
Allow: /sites/default/files/external/assets/
Allow: /sites/default/files/external/printable-bracket/
Allow: /sites/default/files/external/gametool/brackets/
Allow: /sites/default/files/legacy/
# css
Allow: /modules/custom/*.css
Allow: /modules/custom/*/css/
Allow: /modules/custom/*/modules/*/css/
Allow: /themes/custom/*/css/
Allow: /modules/contrib/*.css
Allow: /modules/contrib/*/css/
Allow: /modules/contrib/*/modules/*/css/
Allow: /themes/contrib/*/css/
# img
Allow: /modules/custom/*/img/
Allow: /modules/custom/*/modules/*/img/
Allow: /themes/custom/*/img/
Allow: /themes/custom/*/assets/
Allow: /modules/contrib/*/img/
Allow: /modules/contrib/*/modules/*/img/
Allow: /themes/contrib/*/img/
Allow: /themes/contrib/*/assets/
# js
Allow: /modules/custom/*/js/
Allow: /modules/custom/*/lib/
Allow: /modules/custom/*/templates/compiled/
Allow: /modules/custom/*/dist/
Allow: /modules/custom/*/pkg/
Allow: /themes/custom/*/js/
Allow: /modules/contrib/*/js/
Allow: /themes/contrib/*/js/
Allow: /_ssr/live-updates/
Allow: /_nuxt/
# libraries
Allow: /modules/custom/casablanca_libraries/
# AI Training Bots
User-agent: AI2Bot
User-agent: Ai2Bot-Dolma
User-agent: anthropic-ai
User-agent: Applebot-Extended
User-agent: Bytespider
User-agent: CCBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-Web
User-agent: cohere-ai
User-agent: cohere-training-data-crawler
User-agent: Diffbot
User-agent: FacebookBot
User-agent: Google-Extended
User-agent: GPTBot
User-agent: Kangaroo Bot
User-agent: Meta-ExternalAgent
User-agent: meta-externalagent
User-agent: Meta-ExternalFetcher
User-agent: meta-externalfetcher
User-agent: omgili
User-agent: omgilibot
User-agent: Timpibot
User-agent: Webzio-Extended
Disallow: /
# Data Collection Bots
User-agent: magpie-crawler
User-agent: Scrapy
Disallow: /
# Sitemaps
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/article-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/brackets-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/superpage-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/video-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/page-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/iframe-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/ranking-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/layout_page-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/tabbed_content-sitemap.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/history-sitemap.xml
Sitemap: https://www.ncaa.com/sitemap/news.xml
Sitemap: https://www.ncaa.com/sites/default/files/public/sitemaps/seo-sitemap.xml
BURL Variantswww/non-www, trailing slash, HTTP→HTTPSREVIEW
www / non-www
Inconsistent — duplicate content risk
HTTP → HTTPS
Consistent
BTLS Certificate Expiry & Recommendations261 days until leaf cert expires — 5 issues to addressREVIEW
Certificate validity
Recommended actions
- Extend HSTS max-age to at least 31536000 (1 year) to meet the preload list criteria
- Add includeSubDomains to the HSTS directive
- Add the preload directive and submit to hstspreload.org once max-age + includeSubDomains are in place
- Enable DNSSEC on your domain for DNS spoofing protection
- Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
BCDN & DeliveryAkamaiREVIEW
A+DNS Records1 A records, 52 ms lookupPASS
| A | 23.37.160.196 |
| AAAA | 2a02:26f0:1380:289::3b68, 2a02:26f0:1380:29c::3b68 |
| CNAME | — |
| NS | a1-17.akam.net, a6-67.akam.net, a16-65.akam.net, a3-66.akam.net, a12-64.akam.net, a9-64.akam.net |
| MX | 10 ncaa-com.mail.protection.outlook.com |
| TXT | _globalsign-domain-verification=KlRKW2D7t40KFZ_nUaLe2Q97CUUw_uDhQP6sMtE41j _globalsign-domain-verification=gpMTwGRpMPUCHtWhvJdbALB9NuCNoAwxk8D8ausB4O SPF v=spf1 include:ncaa.com._nspf.vali.email include:%{i}._ip.%{h}._ehlo.%{d}._spf.v... _globalsign-domain-verification=UfI2Coel7g1d8Pb2OUURCNSemOd2JHBzMDWQ2ZGYEt _globalsign-domain-verification=70bqcy6kAsAxLWiey006j1Ywy2FSHtMyieA_YvaU-s _globalsign-domain-verification=_fXiPvR9NZEAEcsvVSzWSws_MJtNGmR9obmtAt8dp8 ms=ms11405805 1vqlcbbad2r2a67dshbdaokb7h |
| CAA | Lookup not available with standard resolver |
Multiple A records provide failover if one server goes down.
Single A record means a single point of failure — if that IP goes down, your site is unreachable until DNS TTL expires.
Learn more ▾ ▴
Add multiple A records for round-robin failover, or use a managed DNS provider with health-checked failover (Route 53, Cloudflare, NS1). Short TTL (60-300s) lets clients recover faster on outages.
Source: SRE practice / DNS architecture
CAA record lookup requires a specialized DNS resolver. This check will be available in a future update.
Informational: CAA (Certification Authority Authorization) records weren't checked in this scan.
ARedirect Chain1 redirect(s), 323 ms totalPASS
https://ncaa.com
24 ms · HTTP/1.1
https://www.ncaa.com/
299 ms · HTTP/1.1 FINAL
| # | URL | Status | Time | Protocol | Server |
|---|---|---|---|---|---|
| 1 | https://ncaa.com | 301 | 24 ms | HTTP/1.1 | AkamaiGHost |
| 2 | https://www.ncaa.com/ | 200 | 299 ms | HTTP/1.1 | openresty |
See the visual redirect chain in the HTTP Probe tab →
A+IPv6 ReadinessIPv6 reachable (1 ms)PASS
A+Domain Intelligencencaa.com — via Network Solutions, LLC, 28 years, 8 months oldPASS
196 days
December 29, 2026
261 days
Issued by GlobalSign nv-sa
28 years, 8 months
Registered December 30, 1997
Not enabled
Protects against DNS spoofing
Unknown
2a02:26f0:1380:29c::3b68
Network Solutions, LLC
Expiry timeline
Recommended actions
- Enable DNSSEC to protect visitors from DNS spoofing
- Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
DNSSEC protects against DNS spoofing attacks. While not required, enabling DNSSEC adds an additional layer of security. Contact your DNS provider to enable it.
Without DNSSEC, an attacker who can poison your DNS can hijack your domain — and SSL certs alone don't stop them.
Learn more ▾ ▴
DNSSEC adds cryptographic signatures to DNS records, preventing forged responses from poisoning resolver caches. Without it, an attacker who controls the network path can redirect your domain to a malicious server before any HTTPS handshake happens. Most modern registrars (Cloudflare, Google Domains, Route 53) enable it with one toggle.
Source: ICANN / RFC 4033
The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.
Without registrar lock, an attacker who phishes your registrar credentials can transfer the domain in minutes — total brand hijack.
Learn more ▾ ▴
Registrar lock (clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited) requires extra verification before any transfer/update/delete. Every major registrar offers it free. Combined with 2FA on your registrar account, it's the strongest defense against domain hijacking.
Source: ICANN / domain-security best practice