Skip to content
https://psichologie.cz

Infrastructure

· 17 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.
SCORE
88
GRADE
B
FIX
1
REVIEW
7
PASS
9
INFO
0
Probed from Madrid, Spain
200 OK
Checks
17
9 PASS 7 REVIEW 1 FIX
F
IPv6 Readiness
Action
IPv6 records exist but unreachable
FIX
IPv6 records exist but unreachable
Warning::
IPv6 DNS records exist but server is not reachable
Having AAAA records but an unreachable server is worse than no AAAA — clients may experience delays before falling back to IPv4.
Got: 2a01:7e01::f03c:91ff:fe23:bc1c
Info::
IPv6 connection error
Got: dial tcp6 [2a01:7e01::f03c:91ff:fe23:bc1c]:443: connect: connection refused
IPv6 Misconfigured
AAAA Records 2a01:7e01::f03c:91ff:fe23:bc1c Connection UNREACHABLE

Having AAAA records but an unreachable server is worse than no AAAA — clients may experience delays before falling back to IPv4.

Why this matters

Advertising IPv6 (AAAA records) without a reachable server means IPv6-preferring clients silently fail every connection.

Learn more

Modern browsers prefer IPv6 if AAAA exists (Happy Eyeballs algorithm). If the IPv6 server isn't reachable, browsers fall back to IPv4 — but with seconds of added latency per request. Either fix IPv6 reachability or remove the AAAA records.

Source: RFC 8305 (Happy Eyeballs)

B
CAA Records
No CAA records (any CA may issue certificates)
REVIEW
No CAA records (any CA may issue certificates)
Info::
No CAA records published
Without CAA records, any publicly-trusted CA can issue certificates for this domain. Adding a CAA record (`yourdomain. IN CAA 0 issue "letsencrypt.org"`) restricts issuance to CAs you authorize. Required by CAB Forum baseline since 2017; the default of 'any CA' is widely supported but is the broader attack surface for issuance fraud.
B
Reverse DNS
0/2 IPs match cert SAN
REVIEW
0/2 IPs match cert SAN
Info::
PTR for 172.104.243.58 does not match any cert SAN: li1820-58.members.linode.com
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
Info::
PTR lookup failed for 2a01:7e01::f03c:91ff:fe23:bc1c: lookup 2a01:7e01::f03c:91ff:fe23:bc1c: no such host
No reverse DNS record set for this IP. Common on bare cloud-VM IPs without provider-side PTR; not a security issue.
B
TLS Certificate Expiry & Recommendations
62 days until leaf cert expires — 3 issues to address
REVIEW

Certificate validity

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

Recommended actions

  • Prefer TLS 1.3 — TLS 1.2 is acceptable but TLS 1.3 removes RSA key exchange and improves latency
  • Enable HSTS: Strict-Transport-Security: max-age=31536000; includeSubDomains
  • Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
C
CDN & Delivery
Action
Assets on Cloudflare (host cdn.vidstack.io, 4 assets); document served directly from origin (Linode)
REVIEW
Assets on Cloudflare (host cdn.vidstack.io, 4 assets); document served directly from origin (Linode)
Warning::
Document not behind existing CDN (Cloudflare serves the assets)
The page's subresources are delivered by Cloudflare (cdn.vidstack.io, 4 assets), but the HTML document itself comes straight from the origin (Linode). Routing the document through the CDN already in use is the cheapest latency win available here -- the provider relationship, the certificate and the config already exist. A short edge TTL with stale-while-revalidate suits HTML that changes often; if the response is genuinely per-user, edge TLS termination alone still removes a full round trip from every visitor's first byte.
Got: cf-ray: a37ea8a7eac586d9-CDG
Info::
Assets on Cloudflare: cdn.vidstack.io (assets: 4), cache HIT
Got: cf-ray: a37ea8a7eac586d9-CDG
Warning: Assets on a CDN, document is not: Cloudflare
Document origin Linode

Asset hosts on a CDN

  • cdn.vidstack.io — Cloudflare · assets: 4 · Cache Status: HIT

Other asset hosts

  • d70shl7vidtft.cloudfront.net — assets: 1 · below probe threshold

The heavy static files already ride an edge network, but every visitor still waits on the origin for the HTML itself. Routing the document through the same CDN is usually a config change rather than a migration: a short edge TTL with stale-while-revalidate for cacheable HTML, or edge TLS termination alone when the response is per-user.

B
CDN Cache Observability
No CDN cache-status headers in the response
REVIEW
No CDN cache-status headers in the response
Info::
No CDN cache-status headers in the response
Without an X-Cache / CF-Cache-Status / X-Vercel-Cache / Age header, you can't tell from outside whether a request hit the cache or went to origin. Operationally important: enables debugging stale-content reports and verifying cache rules. Most managed CDN platforms emit at least one of these by default; absence often means the platform's diagnostic headers are stripped at an upstream proxy.
B
Operational Status Page
No status page link detected
REVIEW
No status page link detected
Info::
No operational status page link detected
Status pages communicate planned maintenance and incidents to users -- a hallmark of operationally-mature services. Most SaaS teams publish one via Atlassian Statuspage, Instatus, BetterUptime, or a self-hosted Cachet. Smaller sites legitimately don't need one; flagged as Info, not a failure.
B
Health Check Endpoint
No conventional health endpoint found
REVIEW
No conventional health endpoint found
Info::
No conventional health endpoint found
Health endpoints (/health, /healthz, /status, /ping, /api/health) let uptime monitors, load balancers, and orchestration systems (Kubernetes, ECS, Fly.io) verify the service is alive. Marketing sites and small services often skip them legitimately; flagged as Info, not a failure. Probe results: /api/health: 404, /health: 404, /healthz: 404, /ping: 404, /status: 404.
A+
DNS Records
1 A records, 46 ms lookup
PASS
1 A records, 46 ms lookup
Info::
Resolves to 1 IPv4 address(es)
Got: 172.104.243.58
Info::
Single A record — no DNS redundancy
Multiple A records provide failover if one server goes down.
Info::
Has 1 IPv6 (AAAA) record(s)
Got: 2a01:7e01::f03c:91ff:fe23:bc1c
Info::
3 nameserver(s) configured
Got: ns3.websupport.eu, ns1.websupport.cz, ns2.websupport.cz
Info::
2 mail exchanger(s) configured
Info::
SPF record present in TXT
Info::
DNS resolution time: 46 ms
Got: 46 ms
A172.104.243.58
AAAA2a01:7e01::f03c:91ff:fe23:bc1c
CNAME
NSns3.websupport.eu, ns1.websupport.cz, ns2.websupport.cz
MX
10 mxa.eu.mailgun.org
10 mxb.eu.mailgun.org
TXT
SPF v=spf1 include:mailgun.org ~all
google-site-verification=s5DH_dItH7M1BRvS3KyrCmANMHx4eUAoa0lEG2kXWdM
CAALookup not available with standard resolver
Resolved in 46 ms

Multiple A records provide failover if one server goes down.

Why this matters

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

A+
Subdomain Takeover
No subdomain takeover risk detected
PASS
No subdomain takeover risk detected
Info::
No CNAME record present
A+
DNSSEC
Signed and validating
PASS
Signed and validating
Info::
DNSSEC fully signed and chain validates (ECDSAP256SHA256)
A
Multi-Resolver DNS Speed
Mean 84ms across 3 resolvers (spread 74ms)
PASS
Mean 84ms across 3 resolvers (spread 74ms)
Info::
Google: 35ms
Got: 35ms via 8.8.8.8:53
Info::
Quad9: 109ms
Got: 109ms via 9.9.9.9:53
Info::
Cloudflare: 109ms
Got: 109ms via 1.1.1.1:53
A+
Redirect Chain
No redirects — direct access
PASS
No redirects — direct access
Info::
No redirects — direct access
Got: https://psichologie.cz

https://psichologie.cz

201 ms · HTTP/1.1 FINAL

#URLStatusTimeProtocolServer
1https://psichologie.cz200201 msHTTP/1.1nginx/1.18.0 (Ubuntu)
A+
Crawlability
robots.txt present, sitemap with 367 URLs
PASS
robots.txt present, sitemap with 367 URLs
Info::
robots.txt is present
Got: 1112 bytes
Info::
sitemap.xml is present
Info::
sitemap.xml is valid XML
Info::
sitemap.xml contains 367 entries
Info::
robots.txt references sitemap
robots.txt 200 OK
Size 1112 B Sitemaps referenced 1 User-agents * Blocking No — crawling allowed
User-agent: *
Allow: /

# Disallow URLs with query parameters that create crawler traps (combinatorial URL explosions)

# BackUrl - navigation helper parameter, not content
Disallow: /*?*BackUrl=
Disallow: /*&BackUrl=

# Blog/podcast topic filter and pagination - infinite unique URL combinations
Disallow: /*?*Topics=
Disallow: /*&Topics=
Disallow: /*?*Page=
Disallow: /*&Page=
Disallow: /*?*Category=
Disallow: /*&Category=

# Disallow account/auth pages - no SEO value
Disallow: /prihlaseni
Disallow: /registrace
Disallow: /zapomenute-heslo
Disallow: /reset-hesla
Disallow: /potvrzeni-emailu
Disallow: /odhlaseni
Disallow: /zmena-emailu
Disallow: /ucet

# Disallow cart/payment/order pages - no SEO value
Disallow: /kosik
Disallow: /objednavka-prijata
Disallow: /presmerovani-na-platbu
Disallow: /platba-uspesna
Disallow: /platba-neuspesna

# Disallow password-gated and private course pages
Disallow: /nestekej
Disallow: /studium-kurzu
Disallow: /kurz-dokoncen

# Disallow Blazor framework files - not indexable content
Disallow: /_framework/
Disallow: /_blazor/

Sitemap: https://psichologie.cz/sitemap.xml

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: non-www)
Info::
HTTP correctly redirects to HTTPS permanently
Got: HTTP 301

www / non-www

301https://www.psichologie.cz/
200https://psichologie.cz/

Preferred variant: non-www

HTTP → HTTPS

301http://psichologie.cz/ https://psichologie.cz/

Consistent

A+
Domain Intelligence
psichologie.cz — via REG-ACTIVE24, 7 years, 4 months old
PASS
psichologie.cz — via REG-ACTIVE24, 7 years, 4 months old
Info::
Domain registered until May 19, 2027 (8 months remaining)
Info::
DNSSEC is enabled
Info::
Registrar: REG-ACTIVE24
Warning::
Registrar lock is NOT enabled
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.
Domain expiry

250 days

May 19, 2027

SSL certificate

62 days

Issued by Let's Encrypt

Domain age

7 years, 4 months

Registered May 20, 2019

DNSSEC

Enabled

Protects against DNS spoofing

Hosting

Unknown

2a01:7e01::f03c:91ff:fe23:bc1c

Registrar

REG-ACTIVE24

Unlocked 3 NS records
Expiry timeline
Today
+1 year
Domain expiry SSL expiry Danger zone (≤30 days)
Recommended actions
  • Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
Registrar REG-ACTIVE24
Created May 20, 2019 (7 years, 4 months ago)
Expires May 19, 2027 (8 months)
Last Updated May 9, 2026
Name Servers ns1.websupport.cz, ns2.websupport.cz, ns3.websupport.eu
DNSSEC Enabled
Hosting
IP Address 2a01:7e01::f03c:91ff:fe23:bc1c
Data source: rdap (0.4s)

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.

Why this matters

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

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

Connection waterfall

DNS Lookup 110 ms TCP Connect 25 ms TLS Handshake 54 ms Server Processing 142 ms Content Transfer 26 ms
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback