Rapport SEO : cmjornal.pt
Généré le 28 avril 2026 · 40 constatations · 9.0s
Les prestataires de services doivent dominer les recherches locales avec des coordonnées (NAP) exactes, des avis clients et des signaux locaux pour attirer des clients de proximité.
Détail des scores
Score moyen Commerce local : 54
Projection du score
Amélioration estimée sur la base des constatations identifiées dans ce rapport
Prêt à améliorer votre SEO ?
Commencez un essai gratuit et découvrez comment améliorer votre score.
Détail par module
Toutes les constatations (37)
Critique (3)
- highsitemap
Missing sitemap.xml
No sitemap.xml found at the root
Create a sitemap.xml to help search engines discover all pages
- highaccessibility
1 form fields without labels
Form inputs without associated labels are inaccessible
Use <label for="id"> or aria-label on every form field
- highsocial checker
Missing og:title
Open Graph title is not set — social shares will use generic text
Add og:title meta tag for compelling social media previews
Moyen (18)
- mediumcookies
1 cookie missing Secure flag
Cookies without Secure flag can be sent over unencrypted HTTP connections
Add the Secure attribute to all cookies to prevent transmission over HTTP
- mediumheaders
Missing content-security-policy
CSP header is missing. The site may be vulnerable to XSS attacks.
Add a Content-Security-Policy header to restrict resource loading
- mediumheaders
Missing x-content-type-options
X-Content-Type-Options is missing. MIME-sniffing attacks are possible.
Add X-Content-Type-Options: nosniff header
- mediummeta
Missing canonical URL
No canonical link tag found
Add a canonical URL to prevent duplicate content issues
- mediummeta
Missing og:title
Open Graph title is not set
Add og:title meta tag for social sharing
- mediummeta
Missing og:image
No Open Graph image set. Social shares will lack a preview image.
Add og:image meta tag (1200x630px recommended)
- mediumrobots
Important resources blocked
robots.txt blocks /css/ — search engines can't render the page properly
Allow crawlers to access CSS, JS, and image resources
- mediumtechnology
Render-blocking scripts
4 scripts load synchronously without async/defer
Add async or defer to non-critical scripts to improve page load speed
- mediumtechnology
Mixed content detected
2 resources loaded over HTTP on an HTTPS page
Update all resource URLs to use HTTPS
- mediumcontent
External links without noopener
21 external links with target="_blank" lack rel="noopener"
Add rel="noopener noreferrer" to all target="_blank" links
- mediummobile
Zoom disabled
Viewport prevents user zoom — accessibility issue
Remove maximum-scale=1 and user-scalable=no to allow pinch-to-zoom
- mediumaccessibility
Missing main landmark
No <main> element or role="main" found
Wrap primary content in a <main> element for screen reader navigation
- mediumrate limits
No rate limiting detected
10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.
Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks
- mediumsocial checker
Missing og:image
No social sharing image set — posts will lack visual appeal
Add og:image meta tag (1200x630px recommended)
- mediumuptime checker
Slow response time
Average response time is 2191ms (should be < 2000ms)
Optimize server response time — consider CDN, caching, or server upgrades
- mediumcrawl budget
No sitemap.xml found
sitemap.xml returned HTTP 404
Create a sitemap.xml to help search engines discover all pages
- mediumindexing checker
Missing canonical URL
No canonical link tag found — search engines may index duplicate versions
Add a self-referencing canonical URL to prevent duplicate content issues
- mediumlog analyzer
Server version exposed
Server header reveals version: Microsoft-IIS/8.5
Remove version numbers from the Server header to reduce attack surface
Faible (16)
- lowdns
No IPv6 (AAAA) records
The domain has no AAAA records for IPv6 connectivity
Add AAAA DNS records for IPv6 support
- lowdns
DMARC policy is 'none'
DMARC is set but policy is 'none' (monitoring only).
Consider upgrading DMARC policy to 'quarantine' or 'reject'
- lowheaders
Missing referrer-policy
Referrer-Policy is not set. Full URLs may leak to third parties.
Add Referrer-Policy: strict-origin-when-cross-origin
- lowheaders
Missing permissions-policy
Permissions-Policy is missing.
Add Permissions-Policy to restrict browser feature access
- lowheaders
Server header exposes software
Server: Microsoft-IIS/8.5
Remove or obfuscate the Server header to reduce information leakage
- lowstructured data
Missing WebSite schema
No WebSite structured data found
Add WebSite schema with SearchAction for sitelinks search box
- lowstructured data
Organization missing url
Organization schema has no url
Add the website URL to the Organization schema
- lowtechnology
Many inline scripts
28 inline <script> blocks found
Move inline scripts to external files for caching and CSP compliance
- lowtechnology
Many third-party domains
32 external domains — may impact performance and privacy
Reduce third-party dependencies or self-host critical resources
- lowcontent
Lazy images without dimensions
50 lazy-loaded images lack width/height — causes layout shift
Add width and height attributes to lazy-loaded images
- lowrate limits
No WAF detected
No Web Application Firewall (Cloudflare, AWS, Akamai, Vercel, Sucuri, Fastly) was detected in response headers.
Consider using a WAF to protect against common web attacks (XSS, SQL injection, DDoS)
- lowrate limits
No bot protection detected
No CAPTCHA, challenge page, or bot detection was triggered during rapid requests.
Consider implementing bot protection (e.g., Cloudflare Turnstile, hCaptcha) for sensitive endpoints
- lownews mentions
No press page on site
Found 1 external mentions but no dedicated press page
Create a /press or /news section to aggregate and amplify media coverage
- lowsocial checker
Missing og:type
Open Graph type is not set
Add og:type meta tag (e.g., "website", "article")
- lowbrand checker
No WebSite schema
No WebSite JSON-LD found
Add WebSite structured data for sitelinks search box in Google
- lowbrand checker
Missing og:site_name
Open Graph site name is not set
Add og:site_name meta tag for consistent social sharing
AI Fix Prompt
Copiez ce prompt dans ChatGPT ou Claude pour obtenir des instructions de correction détaillées étape par étape
Fix all SEO issues found in the audit of cmjornal.pt.
Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.
```json
{
"domain": "cmjornal.pt",
"scores": {
"overall": 80,
"performance": 0,
"seo": 78,
"accessibility": 77,
"bestPractices": 82,
"security": 82
},
"findings": [
{
"module": "cookies",
"severity": "medium",
"title": "1 cookie missing Secure flag",
"description": "Cookies without Secure flag can be sent over unencrypted HTTP connections",
"recommendation": "Add the Secure attribute to all cookies to prevent transmission over HTTP"
},
{
"module": "headers",
"severity": "medium",
"title": "Missing content-security-policy",
"description": "CSP header is missing. The site may be vulnerable to XSS attacks.",
"recommendation": "Add a Content-Security-Policy header to restrict resource loading"
},
{
"module": "headers",
"severity": "medium",
"title": "Missing x-content-type-options",
"description": "X-Content-Type-Options is missing. MIME-sniffing attacks are possible.",
"recommendation": "Add X-Content-Type-Options: nosniff header"
},
{
"module": "meta",
"severity": "medium",
"title": "Missing canonical URL",
"description": "No canonical link tag found",
"recommendation": "Add a canonical URL to prevent duplicate content issues"
},
{
"module": "meta",
"severity": "medium",
"title": "Missing og:title",
"description": "Open Graph title is not set",
"recommendation": "Add og:title meta tag for social sharing"
},
{
"module": "meta",
"severity": "medium",
"title": "Missing og:image",
"description": "No Open Graph image set. Social shares will lack a preview image.",
"recommendation": "Add og:image meta tag (1200x630px recommended)"
},
{
"module": "robots",
"severity": "medium",
"title": "Important resources blocked",
"description": "robots.txt blocks /css/ — search engines can't render the page properly",
"recommendation": "Allow crawlers to access CSS, JS, and image resources"
},
{
"module": "sitemap",
"severity": "high",
"title": "Missing sitemap.xml",
"description": "No sitemap.xml found at the root",
"recommendation": "Create a sitemap.xml to help search engines discover all pages"
},
{
"module": "technology",
"severity": "medium",
"title": "Render-blocking scripts",
"description": "4 scripts load synchronously without async/defer",
"recommendation": "Add async or defer to non-critical scripts to improve page load speed"
},
{
"module": "technology",
"severity": "medium",
"title": "Mixed content detected",
"description": "2 resources loaded over HTTP on an HTTPS page",
"recommendation": "Update all resource URLs to use HTTPS"
},
{
"module": "content",
"severity": "medium",
"title": "External links without noopener",
"description": "21 external links with target=\"_blank\" lack rel=\"noopener\"",
"recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
},
{
"module": "mobile",
"severity": "medium",
"title": "Zoom disabled",
"description": "Viewport prevents user zoom — accessibility issue",
"recommendation": "Remove maximum-scale=1 and user-scalable=no to allow pinch-to-zoom"
},
{
"module": "accessibility",
"severity": "high",
"title": "1 form fields without labels",
"description": "Form inputs without associated labels are inaccessible",
"recommendation": "Use <label for=\"id\"> or aria-label on every form field"
},
{
"module": "accessibility",
"severity": "medium",
"title": "Missing main landmark",
"description": "No <main> element or role=\"main\" found",
"recommendation": "Wrap primary content in a <main> element for screen reader navigation"
},
{
"module": "rate-limits",
"severity": "medium",
"title": "No rate limiting detected",
"description": "10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.",
"recommendation": "Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks"
},
{
"module": "social-checker",
"severity": "high",
"title": "Missing og:title",
"description": "Open Graph title is not set — social shares will use generic text",
"recommendation": "Add og:title meta tag for compelling social media previews"
},
{
"module": "social-checker",
"severity": "medium",
"title": "Missing og:image",
"description": "No social sharing image set — posts will lack visual appeal",
"recommendation": "Add og:image meta tag (1200x630px recommended)"
},
{
"module": "uptime-checker",
"severity": "medium",
"title": "Slow response time",
"description": "Average response time is 2191ms (should be < 2000ms)",
"recommendation": "Optimize server response time — consider CDN, caching, or server upgrades"
},
{
"module": "crawl-budget",
"severity": "medium",
"title": "No sitemap.xml found",
"description": "sitemap.xml returned HTTP 404",
"recommendation": "Create a sitemap.xml to help search engines discover all pages"
},
{
"module": "indexing-checker",
"severity": "medium",
"title": "Missing canonical URL",
"description": "No canonical link tag found — search engines may index duplicate versions",
"recommendation": "Add a self-referencing canonical URL to prevent duplicate content issues"
},
{
"module": "log-analyzer",
"severity": "medium",
"title": "Server version exposed",
"description": "Server header reveals version: Microsoft-IIS/8.5",
"recommendation": "Remove version numbers from the Server header to reduce attack surface"
}
]
}
```Recommandations pour votre secteur
- 1Optimiser la fiche d'établissement Google Business
- 2Ajouter le balisage Service/LocalBusiness schema
- 3Intégrer les avis clients avec le balisage Review schema
- 4Assurer la cohérence des coordonnées NAP sur l'ensemble du site
- 5Inscrire l'entreprise dans les principaux annuaires locaux
Liste de contrôle SEO pour Commerce local
Conseils pour les sites de type Mixte
- →Créez des pages de destination ciblées pour chaque audience
- →Appliquez des métadonnées distinctes par groupe de pages
- →Segmentez votre sitemap par typologie de contenu
Utilisez Ctrl+P / Cmd+P pour enregistrer au format PDF