Skip to content
https://www.python.org

Infrastructure

· 9 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.
SCORE
93
GRADE
A
FIX
0
REVIEW
3
PASS
6
INFO
0
Probed from Sao Paulo, Brazil
200 OK
Checks
9
6 PASS 3 REVIEW
B
DNS Records
4 A records, 21 ms lookup
REVIEW
4 A records, 21 ms lookup
Info::
Resolves to 4 IPv4 address(es)
Got: 151.101.192.223, 151.101.0.223, 151.101.64.223, 151.101.128.223
Info::
Has 4 IPv6 (AAAA) record(s)
Got: 2a04:4e42:400::223, 2a04:4e42::223, 2a04:4e42:600::223, 2a04:4e42:200::223
Warning::
CNAME record at zone apex
A CNAME at the zone apex can break MX and NS records. Use ALIAS/ANAME or A records instead.
Got: dualstack.python.map.fastly.net
Info::
No NS records found
Info::
No MX records — email not configured via DNS
Info::
CAA records not checked
CAA record lookup requires a specialized DNS resolver. This check will be available in a future update.
Info::
No SPF record found in TXT records
SPF helps prevent email spoofing. Add a TXT record starting with 'v=spf1'.
Info::
DNS resolution time: 21 ms
Got: 21 ms
A151.101.192.223, 151.101.0.223, 151.101.64.223, 151.101.128.223
AAAA2a04:4e42:400::223, 2a04:4e42::223, 2a04:4e42:600::223, 2a04:4e42:200::223
CNAMEdualstack.python.map.fastly.net
NS
MX
TXT
CAALookup not available with standard resolver
Resolved in 21 ms

A CNAME at the zone apex can break MX and NS records. Use ALIAS/ANAME or A records instead.

Why this matters

CNAME at the apex (example.com) breaks every other apex record (MX, TXT, NS) — DNS-protocol violation per RFC 1034.

Learn more

RFC 1034 forbids CNAME alongside other records at the same name. Some DNS providers offer ALIAS / ANAME / flattened-CNAME records that work around this — use those instead. Otherwise apex-level CNAME breaks email (no MX), domain ownership verification (no TXT), and more.

Source: RFC 1034

CAA record lookup requires a specialized DNS resolver. This check will be available in a future update.

Why this matters

Informational: CAA (Certification Authority Authorization) records weren't checked in this scan.

SPF helps prevent email spoofing. Add a TXT record starting with 'v=spf1'.

Why this matters

Without SPF, receiving servers can't validate sending IPs — your domain is easier to spoof in phishing.

Learn more

SPF complements DMARC. Both should be published. SPF records list authorized sending IPs (e.g., `v=spf1 include:_spf.google.com ~all` for Google Workspace). After publishing, verify in Google Postmaster Tools or mxtoolbox.

Source: RFC 7208 (SPF)

B
Crawlability
robots.txt present, no sitemap
REVIEW
robots.txt present, no sitemap
Info::
robots.txt is present
Got: 537 bytes
Info::
No sitemap.xml found
A sitemap helps search engines discover and index your pages more efficiently.
Info::
robots.txt does not reference a sitemap
Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.

A sitemap helps search engines discover and index your pages more efficiently.

Why this matters

No sitemap.xml — Google relies on crawl-graph discovery alone, slowing indexing of deep or fresh URLs.

Learn more

A sitemap accelerates Google's discovery of new and updated content. Most CMSes auto-generate one; static-site frameworks need a build-step plugin. Reference it from robots.txt and submit in Search Console to confirm Google can fetch it.

Source: sitemaps.org / Google Search Central

Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.

Why this matters

robots.txt omits Sitemap: directive — crawlers must fetch /sitemap.xml by convention; reliable but missing the explicit hint.

Source: sitemaps.org

robots.txt 200 OK
Size 537 B Sitemaps referenced 0 User-agents HTTrack, puf, MSIECrawler, Krugle, Nutch, * Blocking No — crawling allowed
# Directions for robots.  See this URL:
# http://www.robotstxt.org/robotstxt.html
# for a description of the file format.

User-agent: HTTrack
User-agent: puf
User-agent: MSIECrawler
Disallow: /

# The Krugle web crawler (though based on Nutch) is OK.
User-agent: Krugle
Allow: /
Disallow: /~guido/orlijn/
Disallow: /webstats/

# No one should be crawling us with Nutch.
User-agent: Nutch
Disallow: /

# Hide old versions of the documentation and various large sets of files.
User-agent: *
Disallow: /~guido/orlijn/
Disallow: /webstats/

sitemap.xml No sitemap found

No sitemap found

Adding a sitemap helps search engines discover your pages.

B
TLS Certificate Expiry & Recommendations
315 days until leaf cert expires — 3 issues to address
REVIEW

Certificate validity

315
days left
0d 30d 60d 90d+

Recommended actions

  • Submit your domain to hstspreload.org to be added to the Chrome preload list
  • 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
A+
Redirect Chain
No redirects — direct access
PASS
No redirects — direct access
Info::
No redirects — direct access
Got: https://www.python.org

https://www.python.org

2 ms · HTTP/1.1 FINAL

#URLStatusTimeProtocolServer
1https://www.python.org2002 msHTTP/1.1nginx
A+
IPv6 Readiness
IPv6 reachable (1 ms)
PASS
IPv6 reachable (1 ms)
Info::
IPv6 is configured and reachable at 2a04:4e42:400::223, 2a04:4e42::223, 2a04:4e42:600::223, 2a04:4e42:200::223
Got: 1 ms connect
IPv6 Ready
AAAA Records 2a04:4e42:400::223, 2a04:4e42::223, 2a04:4e42:600::223, 2a04:4e42:200::223 Connection Reachable (1 ms)
A+
URL Variants
www/non-www, trailing slash, HTTP→HTTPS
PASS
www/non-www, trailing slash, HTTP→HTTPS
Info::
www/non-www redirect configured correctly (preferred: www)
Info::
HTTP correctly 301-redirects to HTTPS

www / non-www

200https://www.python.org/
301https://python.org/

Preferred variant: www

HTTP → HTTPS

301http://www.python.org/ https://www.python.org/

Consistent

A+
Domain Intelligence
python.org — via Gandi SAS, 31 years, 5 months old
PASS
python.org — via Gandi SAS, 31 years, 5 months old
Info::
Domain registered until Mar 28, 2033 (7 years remaining)
Info::
DNSSEC is not enabled
DNSSEC protects against DNS spoofing attacks. While not required, enabling DNSSEC adds an additional layer of security. Contact your DNS provider to enable it.
Info::
Registrar: Gandi SAS
Domain expiry

2477 days

March 28, 2033

SSL certificate

315 days

Issued by GlobalSign nv-sa

Domain age

31 years, 5 months

Registered March 27, 1995

DNSSEC

Not enabled

Protects against DNS spoofing

Hosting

Unknown

2a04:4e42:200::223

Registrar

Gandi SAS

Lock status unknown 4 NS records
Expiry timeline
Today
+1 year
Domain expiry SSL expiry Danger zone (≤30 days)
Recommended actions
  • Enable DNSSEC to protect visitors from DNS spoofing
Registrar Gandi SAS
Created March 27, 1995 (31 years, 5 months ago)
Expires March 28, 2033 (7 years)
Last Updated June 17, 2025
Name Servers ns-1134.awsdns-13.org, ns-2046.awsdns-63.co.uk, ns-484.awsdns-60.com, ns-981.awsdns-58.net
DNSSEC Not enabled
Hosting
IP Address 2a04:4e42:200::223
Data source: rdap (0.2s)

DNSSEC protects against DNS spoofing attacks. While not required, enabling DNSSEC adds an additional layer of security. Contact your DNS provider to enable it.

Why this matters

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

A+
HTTP Probe Timing
Total 12 ms — DNS, TCP, TLS, TTFB, content transfer breakdown
PASS
DNS Lookup DNS Lookup — time to resolve the domain name to an IP address.
4 ms
TCP Connect TCP Connect — time to establish a TCP connection to the server.
1 ms
TLS Handshake TLS Handshake — time to complete the HTTPS encryption handshake.
4 ms
Time to First Byte Time to First Byte — how long the server takes to respond with the first byte of data.
12 ms
Total Time Total request time from DNS lookup through full response.
12 ms

Connection waterfall

DNS Lookup 4 ms TCP Connect 1 ms TLS Handshake 4 ms Server Processing 2 ms Content Transfer 1 ms
A+
CDN & Delivery
Fastly (MISS, HIT, HIT)
PASS
Fastly (MISS, HIT, HIT)
Info::
Site is served via Fastly CDN
Got: x-served-by: cache-iad-kiad7000081-IAD, cache-iad-kiad7000081-IAD, cache-gru-sbgr1930069-GRU
Info::
CDN cache status: MISS, HIT, HIT
CDN Detected: Fastly
Provider Fastly Cache Status MISS, HIT, HIT Evidence x-served-by: cache-iad-kiad7000081-IAD, cache-iad-kiad7000081-IAD, cache-gru-sbgr1930069-GRU
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback