Infrastructure
· 9 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.DCDN & DeliveryActionNo CDN detectedFIX
Consider using a CDN to improve global delivery speed and reduce origin load.
BRedirect Chain2 redirect(s), 279 ms totalREVIEW
https://public.lu
60 ms · HTTP/1.1
https://etat.public.lu
89 ms · HTTP/1.1
https://etat.public.lu/fr.html
130 ms · HTTP/1.1 FINAL
| # | URL | Status | Time | Protocol | Server |
|---|---|---|---|---|---|
| 1 | https://public.lu | 302 | 60 ms | HTTP/1.1 | Apache/2.4.58 (Ubuntu) |
| 2 | https://etat.public.lu | 302 | 89 ms | HTTP/1.1 | Apache |
| 3 | https://etat.public.lu/fr.html | 200 | 130 ms | HTTP/1.1 | Apache |
See the visual redirect chain in the HTTP Probe tab →
Each redirect adds latency. Try to minimize the chain to 1 hop.
Redirect chain — each hop adds latency; combine into one redirect where possible.
Source: Google Search Central / web.dev
If permanent, use 301 instead.
302 (Found) is for genuinely temporary redirects — if this redirect is permanent, switch to 301 to preserve SEO equity.
Learn more ▾ ▴
Search engines treat 302 as temporary, keeping the original URL indexed and not transferring full link equity to the destination. Use 301 (Moved Permanently) for permanent redirects (HTTP→HTTPS, www-vs-non-www, URL restructures).
Source: Google Search Central
CIPv6 ReadinessActionNo IPv6 supportREVIEW
IPv6 support is increasingly important for global accessibility. About 40% of internet users have IPv6 connectivity.
No AAAA records — same impact as 'no IPv6 (AAAA) records'; IPv6-preferring clients pay extra latency falling back to IPv4.
Source: Google IPv6 stats
CCrawlabilityActionrobots.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
Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.
robots.txt omits Sitemap: directive — crawlers must fetch /sitemap.xml by convention; reliable but missing the explicit hint.
Source: sitemaps.org
<!DOCTYPE HTML>
<html class="no-js" dir="ltr" lang="fr">
<head>
<meta charset="UTF-8"/>
<script>
!function (e) {
var a = e.style
e.className = 'js' + (void 0 == a.flexWrap && void 0 == a.WebkitFlexWrap && void 0 == a.msFlexWrap ? ' no-flexwrap' : '')
}(document.documentElement)
</script>
<script>
function cookieExists(name) {
var cks = document.cookie.split(';');
for (var i = 0; i < cks.length; i++) {
if (cks[i].split('=')[0].trim() === name) {
return true;
}
}
}
if (!cookieExists('isPublicWebsite')) {
document.cookie = 'isPublicWebsite=true';
}
</script>
<title>etat.lu - L'annuaire des sites publics luxembourgeois</title>
<meta name="description" content="L'annuaire des sites publics luxembourgeois"/>
<meta name="template" content="emptypage"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="firstReleaseDate" content="2020/03/17 15:35:33"/>
<meta name="ctie_filter_not_display_on_gouv" content="false"/>
<meta name="ctie_filter_year" content="2020"/>
<meta name="jcr:description" content="L'annuaire des sites publics luxembourgeois"/>
<meta name="ctie_filter_yearmonth" content="2020/03"/>
<meta name="autoDescription" content="false"/>
<meta name="jcr:title" content="etat.lu - L'annuaire des sites publics luxembourgeois"/>
<meta name="ctie_filter_language" content="fr"/>
<meta name="parentTitle" content="Etat"/>
<meta name="og:type" content="article"/>
<meta name="og:title" content="etat.lu - L'annuaire des sites publics luxembourgeois"/>
<meta name="og:description" content="L'annuaire des sites publics luxembourgeois"/>
<meta name="og:url" content="http://etat.public.lu/fr.html"/>
<meta name="og:image" content="http://etat.public.lu/etc.clientlibs/etat/clientlibs/base/resources/images/share/fr/sharedFB.png"/>
<meta name="og:image:type" content="image/png"/>
<meta name="externalUrl" content="http://etat.public.lu/fr.html"/>
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="etat.lu - L'annuaire des sites publics luxembourgeois"/>
<meta name="twitter:description" content="L'annuaire des sites publics luxembourgeois"/>
<meta name="twitter:url" content="http://etat.public.lu/fr.html"/>
<meta name="twitter:image" content="http://etat.public.lu/etc.clientlibs/etat/clientlibs/base/resources/images/share/fr/sharedTW.png"/>
<meta name="firstReleaseDateHour" content="2020-03-17 15:35:33"/>
<link rel="stylesheet" href="/etc.clientlibs/etat/clientlibs/clientlib-dependencies.css" type="text/css">
<link rel="stylesheet" href="/etc.clientlibs/etat/clientlibs/base.css" type="text/css">
<link rel="apple-touch-icon" sizes="180x180" href="/etc.clientlibs/etat/clientlibs/base/resources/images/favicons/apple-touch-icon.png"/>
<link rel="icon" type="image/png" sizes="192x192" href="/etc.clientlibs/etat/clientlibs/base/resources/images/favicons/android-chrome-192x192.png"/>
<link rel="icon" type="image/png" sizes="512x512" href="/etc.clientlibs/etat/clientlibs/base/resources/images/favicons/android-chrome-512x512.png"/>
<link rel="manifest" href="/etc.clientlibs/etat/clientlibs/base/resources/images/favicons/site.webmanifest"/>
<meta name="msapplication-TileColor" content="#ffffff"/>
<meta name="theme-color" content="#ffffff"/>
</head>
<body id="top" class="page basicpage ">
<div class="skiplinks">
<nav role="navigation" aria-label="Accès rapide">
<ul>
<li data-href-child="#footernav">
<a href="#footernav" data-href="#footernav">Aller à la navigation
<span aria-hidden="true"></span>
</a>
</li>
<li data-href-child="#main">
<a href="#main" data-href="#main">Aller au contenu
<span aria-hidden="true"></span>
</a>
</li>
</ul>
</nav>
</div>
<svg xmlns="http://www.w3.org/2000/svg" class="is-hidden iconset"><symbol id="icon-hierarchy-error" viewBox="0 0 24 24"><path d="M20.5 18c-.2-3.4-3-6-6.5-6h-2V5.9c1.4-.2 2.5-1.5 2.5-2.9 0-1.7-1.3-3-3-3s-3 1.3-3 3c0 1.5 1.1 2.7 2.5 2.9V12H9c-3.4 0-6.2 2.7-6.5 6-1.4.3-2.5 1.5-2.5 3 0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1.1-2.7-2.5-2.9C3.8 15.2 6.1 13 9 13h2v5.1c-1.4.2-2.5 1.5-2.5 2.9 0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1.1-2.7-2.5-2.9V13h2c2.9 0 5.2 2.2 5.5 5.1-1.4.2-2.5 1.4-2.5 2.9 0 1.7 1.3 3 3 3s3-1.3 3-3c0-1.5-1.1-2.7-2.5-3"/></symbol><symbol id="icon-home-breadcrumbs" viewBox="0 0 24 24"><path d="M20.1 7.4c.1.1.2.1.4.1.3 0 .5-.2.5-.5V2.5c0-.3-.2-.5-.5-.5H16c-.2 0-.4.1-.5.3s0 .4.1.5zM3 12.6V24h7v-7h4v7h7V12.6l-9-9z"/><path d="M23.9 12.7 12.4 1.1c-.2-.2-.5-.2-.7 0L.1 12.6c-.2.2-.2.5 0 .7s.5.2.7 0L12 2.2l11.1 11.1c.2.2.5.2.7 0 .2-.1.3-.4.1-.6"/></symbol><symbol id="icon-home-error" viewBox="0 0 24 24"><path d="M20.1 7.4c.1.1.2.1.4.1.3 0 .5-.2.5-.5V2.5c0-.3-.2-.5-.5-.5H16c-.2 0-.4.1-.5.3s0 .4.1.5zM3 12.6V24h7v-7h4v7h7V12.6l-9-9z"/><path d="M23.9 12.7 12.4 1.1c-.2-.2-.5-.2-.7 0L.1 12.6c-.2.2-.2.5 0 .7s.5.2.7 0L12 2.2l11.1 11.1c.2.2.5.2.7 0 .2-.1.3-.4.1-.6"/></symbol><symbol id="icon-search-anchor" viewBox="0 0 24 24"><path d="M9 18c2.1 0 4.1-.7 5.6-2l7.7 7.7c.4.4 1 .4 1.4 0s.4-1 0-1.4L16 14.6c1.2-1.5 2-3.5 2-5.6 0-5-4-9-9-9S0 4 0 9s4 9 9 9M9 2c3.9 0 7 3.1 7 7s-3.1 7-7 7-7-3.1-7-7 3.1-7 7-7"/><g display="none"><g fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="10" display="inline"><circle cx="8.5" cy="8.5" r="8"/><path stroke-linecap="round" d="m14.2 14.2 9.3 9.3"/></g></g></symbol><symbol id="icon-search-button" viewBox="0 0 24 24"><path d="M9 18c2.1 0 4.1-.7 5.6-2l7.7 7.7c.4.4 1 .4 1.4 0s.4-1 0-1.4L16 14.6c1.2-1.5 2-3.5 2-5.6 0-5-4-9-9-9S0 4 0 9s4 9 9 9M9 2c3.9 0 7 3.1 7 7s-3.1 7-7 7-7-3.1-7-7 3.1-7 7-7"/><g display="none"><g fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="10" display="inline"><circle cx="8.5" cy="8.5" r="8"/><path stroke-linecap="round" d="m14.2 14.2 9.3 9.3"/></g></g></symbol><symbol id="icon-email-error" viewBox="0 0 24 24"><g><path d="m22.7 5-10.4 8.4c-.1.1-.2.1-.3.1s-.2 0-.3-.1L1.3 5c-.2.3-.3.6-.3 1v11c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V6c0-.4-.1-.7-.3-1"/><path d="M22 4.3c-.3-.2-.6-.3-1-.3H3c-.4 0-.7.1-1 .3l10 8.1z"/></g><g display="none"><g fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" display="inline"><path d="M22.5 17c0 .8-.7 1.5-1.5 1.5H3c-.8 0-1.5-.7-1.5-1.5V6c0-.8.7-1.5 1.5-1.5h18c.8 0 1.5.7 1.5 1.5z"/><path d="m22 5-10 8L2 5"/></g></g></symbol><symbol id="icon-navigation-anchor" viewBox="0 0 24 24"><path d="M2.8 6h18.5c.6 0 1-.4 1-1s-.4-1-1-1H2.8c-.5 0-1 .4-1 1s.5 1 1 1M21.3 9H2.8c-.6 0-1 .4-1 1s.4 1 1 1h18.5c.6 0 1-.4 1-1s-.4-1-1-1M21.3 14H2.8c-.6 0-1 .4-1 1s.4 1 1 1h18.5c.6 0 1-.4 1-1s-.4-1-1-1M21.3 19H2.8c-.6 0-1 .4-1 1s.4 1 1 1h18.5c.6 0 1-.4 1-1s-.4-1-1-1"/></symbol><symbol id="icon-navigation-close" viewBox="0 0 24 24"><path d="M13.4 12 23.7 1.7c.4-.4.4-1 0-1.4s-1-.4-1.4 0L12 10.6 1.7.3C1.3-.1.7-.1.3.3s-.4 1 0 1.4L10.6 12 .3 22.3c-.4.4-.4 1 0 1.4.2.2.4.3.7.3s.5-.1.7-.3L12 13.4l10.3 10.3c.2.2.5.3.7.3.3 0 .5-.1.7-.3.4-.4.4-1 0-1.4z"/><g display="none"><g fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" display="inline"><path d="m.5.5 23 23M23.5.5l-23 23"/></g></g></symbol><symbol id="icon-subnav-anchor" viewBox="0 0 24 24"><path d="M23 11H13V1c0-.6-.4-1-1-1s-1 .4-1 1v10H1c-.6 0-1 .4-1 1s.4 1 1 1h10v10c0 .6.4 1 1 1s1-.4 1-1V13h10c.6 0 1-.4 1-1s-.4-1-1-1"/></symbol><symbol id="icon-subnav-close" viewBox="0 0 24 24"><path d="M13.4 12 23.7 1.7c.4-.4.4-1 0-1.4s-1-.4-1.4 0L12 10.6 1.7.3C1.3-.1.7-.1.3.3s-.4 1 0 1.4L10.6 12 .3 22.3c-.4.4-.4 1 0 1.4.2.2.4.3.7.3s.5-.1.7-.3L12 13.4l10.3 10.3c.2.2.5.3.7.3.3 0 .5-.1.7-.3.4-.4.4-1 0-1.4z"/><g display="none"><g fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" display="inline"><path d="m.5.5 23 23M23.5.5l-23 23"/></g></g></symbol><symbol id="icon-langswitch" viewBox="0 0 24 24"><path d="M21.1 4.2c-.5 1.3-1.4 3.5-2.9 4.2q-.15.15-.3 0c-1.1-.3-2.1.1-2.7.4.2.3.5.8.7 1.8.2.1.6 0 .8-.1s.4-.1.6.1c1.2 1.2-.4 2.8-1.3 3.8l-.5.5.1.1c.2.2.5.5.6.9 0 .3-.1.6-.4.8-.5.5-1 .8-1.4 1-.1 1.7-1.4 2.7-3.5 2.7-1 0-2-2.5-2-3 0-.4.2-.7.3-1 .1-.2.2-.4.2-.5 0-.2-.4-.7-.9-1.1-.1-.1-.1-.2-.1-.4 0-.4-.1-.7-.2-.9-.3-.2-.8-.2-1.5-.2h-.8c-1.6 0-2-1.6-2-2.5 0-.2 0-3.9 2.9-4.5 1.3-.3 2.2-.2 2.7.2.3.4.4.6.5.7.5.4 1.5.2 2.3 0 .3-.1.5-.1.8-.2.1-.8.1-1.7 0-2-.6.3-1.2.3-1.7 0q-.75-.45-.9-1.5C10.4 2.1 13.1.9 15 .3c-1-.3-2-.4-3.1-.4C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12c0-3-1.1-5.7-2.9-7.8"/></symbol><symbol id="icon-back-to-top" viewBox="0 0 24 24"><path d="M1.5 19.5c-.2 0-.4-.1-.6-.2-.4-.3-.5-1-.1-1.4l10.5-13c.2-.2.5-.4.8-.4s.6.1.8.4l11 13c.4.4.3 1.1-.1 1.4-.4.4-1.1.3-1.4-.1L12 7.1l-9.7 12c-.2.3-.5.4-.8.4"/></symbol><symbol id="icon-langswitch-button" viewBox="0 0 24 24"><path d="M12 19.5c-.3 0-.6-.1-.8-.4l-11-13c-.4-.4-.3-1.1.1-1.4.4-.4 1.1-.3 1.4.1L12 17 22.2 4.9c.4-.4 1-.5 1.4-.1s.5 1 .1 1.4l-11 13c-.1.2-.4.3-.7.3"/></symbol><symbol id="icon-dropdown-button" viewBox="0 0 24 24"><path d="M12 19.5c-.3 0-.6-.1-.8-.4l-11-13c-.4-.4-.3-1.1.1-1.4.4-.4 1.1-.3 1.4.1L12 17 22.2 4.9c.4-.4 1-.5 1.4-.1s.5 1 .1 1.4l-11 13c-.1.2-.4.3-.7.3"/></symbol><symbol id="icon-previous-pagination" viewBox="0 0 24 24"><path d="M18.5 24c-.2 0-.5-.1-.6-.2l-13-11c-.2-.2-.4-.5-.4-.8s.1-.6.4-.8l13-11c.4-.4 1.1-.3 1.4.1.4.4.3 1.1-.1 1.4L7 12l12.1 10.2c.4.4.5 1 .1 1.4-.1.3-.4.4-.7.4"/></symbol><symbol id="icon-next-pagination" viewBox="0 0 24 24"><path d="M5.5 24c-.3 0-.6-.1-.8-.4-.4-.4-.3-1.1.1-1.4L17 12 4.9 1.8c-.4-.4-.5-1-.1-1.4s1-.5 1.4-.1l13 11c.2.2.4.5.4.8s-.1.6-.4.8l-13 11c-.2 0-.5.1-.7.1"/></symbol><symbol i
BTLS Certificate Expiry & Recommendations35 days until leaf cert expires — 3 issues to addressREVIEW
Certificate validity
Recommended actions
- Enable HSTS: Strict-Transport-Security: max-age=31536000; includeSubDomains
- 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
ADNS Records1 A records, 14 ms lookupPASS
| A | 185.106.24.133 |
| AAAA | — |
| CNAME | — |
| NS | ns1.etat.lu, ns2.etat.lu, ns3.etat.lu |
| MX | 10 incoming-4.mail.etat.lu 10 incoming-2.mail.etat.lu 10 incoming-1.mail.etat.lu 10 incoming-3.mail.etat.lu |
| TXT | MS=ms76708538 google-site-verification=O1yecJksirFr0ho3T_Wz2kDu9lAFqu5iHa_dfwl9034 google-site-verification=TRv0PHj8YqVgTswqhlxi4EzZq8vsb2alunsElaxhimk |
| 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.
SPF helps prevent email spoofing. Add a TXT record starting with 'v=spf1'.
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)
AURL Variantswww/non-www, trailing slash, HTTP→HTTPSPASS
www / non-www
Preferred variant: non-www
HTTP → HTTPS
Use 301 (permanent) instead of 302 (temporary)
A+Domain Intelligencepublic.lu — via EuroDNS SA, hosted on CTIE, LUPASS
Unknown
35 days
Issued by Let's Encrypt
Unknown
Status unknown
Protects against DNS spoofing
CTIE, LU
ASN AS25094
185.106.24.133
EuroDNS SA