Catalog / gerardboisard.com
63

SEO audit for gerardboisard.com

Gérard Boisard – Dessinateur, peintre-graveur, sculpteur.

otherWordPress

Health 63/100 (fair) · 34 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
Screenshot of gerardboisard.com
34
pages crawled
34
indexable pages
1
errors
253
warnings
356
notices
1
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Security 97 1 0 34
Links 9 0 103 7
Content 70 0 34 16
Meta Description 70 0 34 0
Performance 70 0 34 136
Duplicate 78 0 25 0
Headings 84 0 18 0
Agent Readiness 97 0 3 2
Canonical 98 0 2 0
Crawlability 100 0 0 3
Images 100 0 0 42
Social 100 0 0 68
Structured Data 100 0 0 34
URL 100 0 0 14
Findings

Errors (1 rules)

error Mixed content on HTTPS page

Rule security.mixed_content · Security · 1 occurrence(s)

  • https://gerardboisard.com/ — 1 insecure subresource(s), e.g. http://gerardboisard.com/wp-content/uploads/2024/03/gerard-boisard.jpg

Warnings (9 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 3 occurrence(s)

warning Missing canonical tag

Rule canonical.missing · Canonical · 2 occurrence(s)

warning Thin content (low word count)

Rule content.thin · Content · 34 occurrence(s)

warning Duplicate <title> across pages

Rule duplicate.title · Duplicate · 25 occurrence(s)

warning Orphan page (no internal inlinks)

Rule links.orphan · Links · 1 occurrence(s)

warning Internal link points to a redirect

Rule links.redirect_target · Links · 102 occurrence(s)

warning Render-blocking script in <head> (no defer/async)

Rule perf.render_blocking · Performance · 34 occurrence(s)

Notices (18 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 1 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Image alt text is keyword-stuffed (repetition / low variety)

Rule images.alt_stuffed · Images · 10 occurrence(s)

  • https://gerardboisard.com/bwg_gallery/commandes/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/bwg_gallery/dessin/ — 3 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/commandes/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/cubes-labyrinthe/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/dessins/dessins/ — 3 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/sculptures-filaires/ — 1 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://gerardboisard.com/travaux-2d/dessins/ — 3 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.

notice Image alt text is very long (possible keyword stuffing)

Rule images.alt_too_long · Images · 3 occurrence(s)

notice Likely hero image lacks fetchpriority=high

Rule images.hero_no_fetchpriority · Performance · 34 occurrence(s)

  • https://gerardboisard.com/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/antimacles/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/author/admin6087/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bagues/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bagues/bagues-architectes/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bagues/bagues-labyrinthe/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/biographie/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bronzes/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_album/all/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/antimacles/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/bagues-architectes/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/bagues-labyrinthe/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/cages-inutiles/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/citadelles/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/commandes/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/cubes-labyrinthe/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/dessins/dessins/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/sculptures-filaires/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/travaux-2d/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/travaux-2d/dessins/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/travaux-2d/gravures/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://gerardboisard.com/travaux-2d/peintures/ — the likely hero/LCP image (gerard-boisard.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 29 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 3 occurrence(s)

  • https://gerardboisard.com/ — 8 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://gerardboisard.com/bagues/ — 2 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://gerardboisard.com/travaux-2d/ — 3 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.

notice Page has only one internal inlink (fragile crawl path)

Rule links.single_inlink · Links · 4 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 34 occurrence(s)

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 34 occurrence(s)

  • https://gerardboisard.com/ — 14 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/antimacles/ — 34 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/author/admin6087/ — 3 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bagues/ — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bagues/bagues-architectes/ — 21 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bagues/bagues-labyrinthe/ — 12 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/biographie/ — 3 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bronzes/ — 45 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_album/all/ — 6 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/antimacles/ — 34 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/bagues-architectes/ — 21 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/bagues-labyrinthe/ — 12 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/ — 35 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/ — 35 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/ — 45 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/cages-inutiles/ — 15 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/citadelles/ — 17 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/commandes/ — 19 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/cubes-labyrinthe/ — 35 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/dessins/dessins/ — 39 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/sculptures-filaires/ — 45 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/travaux-2d/ — 6 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/travaux-2d/dessins/ — 39 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/travaux-2d/gravures/ — 26 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://gerardboisard.com/travaux-2d/peintures/ — 27 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 34 occurrence(s)

  • https://gerardboisard.com/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/antimacles/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/author/admin6087/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bagues/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bagues/bagues-architectes/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bagues/bagues-labyrinthe/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/biographie/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bronzes/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_album/all/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/antimacles/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/bagues-architectes/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/bagues-labyrinthe/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/cages-inutiles/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/citadelles/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/commandes/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/cubes-labyrinthe/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/dessins/dessins/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/sculptures-filaires/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/travaux-2d/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/travaux-2d/dessins/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/travaux-2d/gravures/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gerardboisard.com/travaux-2d/peintures/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 34 occurrence(s)

  • https://gerardboisard.com/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/antimacles/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/author/admin6087/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bagues/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bagues/bagues-architectes/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bagues/bagues-labyrinthe/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/biographie/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bronzes/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_album/all/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/antimacles/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/bagues-architectes/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/bagues-labyrinthe/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/cages-inutiles/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/citadelles/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/commandes/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/cubes-labyrinthe/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/dessins/dessins/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/sculptures-filaires/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/travaux-2d/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/travaux-2d/dessins/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/travaux-2d/gravures/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gerardboisard.com/travaux-2d/peintures/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice URL redirects to another URL

Rule redirect.single · Crawlability · 3 occurrence(s)

notice Missing recommended security headers

Rule security.missing_headers · Security · 34 occurrence(s)

Pages (showing 34 of 34)
URLStatusIndexableWordsIn-links
https://gerardboisard.com/
Gérard Boisard – Dessinateur, peintre-graveur, sculpteur.
200 yes 54 34
https://gerardboisard.com/antimacles/
Antimacles – Gérard Boisard
200 yes 181 34
https://gerardboisard.com/bagues/
Bagues – Gérard Boisard
200 yes 35 34
https://gerardboisard.com/bagues/bagues-architectes/
Bagues architectes – Gérard Boisard
200 yes 65 34
https://gerardboisard.com/bagues/bagues-labyrinthe/
Bagues labyrinthe – Gérard Boisard
200 yes 32 34
https://gerardboisard.com/biographie/
Biographie – Gérard Boisard
200 yes 193 34
https://gerardboisard.com/bronzes/
Bronzes – Gérard Boisard
200 yes 118 34
https://gerardboisard.com/cages-inutiles/
Cages inutiles – Gérard Boisard
200 yes 154 34
https://gerardboisard.com/citadelles/
Citadelles – Gérard Boisard
200 yes 136 34
https://gerardboisard.com/commandes/
Commandes – Gérard Boisard
200 yes 31 34
https://gerardboisard.com/cubes-labyrinthe/
Cubes labyrinthe – Gérard Boisard
200 yes 154 34
https://gerardboisard.com/dessins/dessins/
Dessins – Gérard Boisard
200 yes 112 34
https://gerardboisard.com/dessins/gravures/
Gravures – Gérard Boisard
200 yes 116 34
https://gerardboisard.com/dessins/peintures/
Peintures – Gérard Boisard
200 yes 163 34
https://gerardboisard.com/sculptures-filaires/
Sculptures filaires – Gérard Boisard
200 yes 142 34
https://gerardboisard.com/travaux-2d/
Travaux 2D – Gérard Boisard
200 yes 35 34
https://gerardboisard.com/travaux-2d/dessins/
Dessins – Gérard Boisard
200 yes 112 1
https://gerardboisard.com/travaux-2d/gravures/
Gravures – Gérard Boisard
200 yes 116 1
https://gerardboisard.com/travaux-2d/peintures/
Peintures – Gérard Boisard
200 yes 163 1
https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-2/
Cubes labyrinthe – Gérard Boisard
200 yes 169 3
https://gerardboisard.com/bwg_gallery/gravure/
Gravure – Gérard Boisard
200 yes 129 3
https://gerardboisard.com/bwg_gallery/cubes-labyrinthe-3/
Cubes labyrinthe – Gérard Boisard
200 yes 168 3
https://gerardboisard.com/bwg_gallery/dessin/
Dessin – Gérard Boisard
200 yes 125 3
https://gerardboisard.com/bwg_gallery/antimacles/
Antimacles – Gérard Boisard
200 yes 196 3
https://gerardboisard.com/bwg_gallery/commandes/
Commandes – Gérard Boisard
200 yes 45 3
https://gerardboisard.com/bwg_gallery/bagues-architectes/
Bagues architectes – Gérard Boisard
200 yes 79 3
https://gerardboisard.com/bwg_gallery/cages-inutiles/
Cages inutiles – Gérard Boisard
200 yes 167 3
https://gerardboisard.com/bwg_gallery/bagues-labyrinthe/
Bagues labyrinthe – Gérard Boisard
200 yes 46 3
https://gerardboisard.com/bwg_gallery/citadelles/
Citadelles – Gérard Boisard
200 yes 150 3
https://gerardboisard.com/bwg_gallery/bronzes/
Bronzes – Gérard Boisard
200 yes 132 3
https://gerardboisard.com/bwg_gallery/cubes-labyrinthe/
Sculptures filaires – Gérard Boisard
200 yes 152 2
https://gerardboisard.com/bwg_gallery/peinture/
Peinture – Gérard Boisard
200 yes 172 2
https://gerardboisard.com/bwg_album/all/
All – Gérard Boisard
200 yes 41 1
https://gerardboisard.com/author/admin6087/
admin6087 – Gérard Boisard
200 yes 38 0

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →