Laporan SEO: ffme.fr
Dijana pada 1 Mei 2026 · 40 penemuan · 10.0s
Laman web institusi mengutamakan kebolehcapaian, keselamatan dan pengindeksan yang betul — rakyat dan pihak berkepentingan memerlukan akses mudah kepada maklumat berkaitan.
Pecahan Skor
Skor purata Umum: 50
Unjuran Skor
Anggaran peningkatan berdasarkan penemuan dalam laporan ini
Ready to improve your SEO?
Start a free trial and see how your score can improve.
Pecahan Modul
Semua Penemuan (38)
Kritikal (9)
- highheaders
Missing strict-transport-security
HSTS header is missing. The site may be vulnerable to downgrade attacks.
Add Strict-Transport-Security header with max-age of at least 31536000
- highssl
SSL certificate not found
Could not retrieve SSL certificate
Ensure the site has a valid SSL certificate installed
- highcookies
Module failed
The operation was aborted due to timeout
Try scanning again
- highcookies
Module failed
The operation was aborted due to timeout
Try scanning again
- highcookies
Module failed
The operation was aborted due to timeout
Try scanning again
- highcookies
Module failed
The operation was aborted due to timeout
Try scanning again
- highaccessibility
1 form fields without labels
Form inputs without associated labels are inaccessible
Use <label for="id"> or aria-label on every form field
- highaccessibility
1 buttons without accessible name
Buttons with no text, aria-label, or title are invisible to screen readers
Add visible text or aria-label to all buttons
- highlayout scan
Could not fetch page
Failed to fetch the page for layout analysis
Ensure the site is accessible
Medium (12)
- mediumdns
Missing DMARC record
No DMARC policy found at _dmarc subdomain.
Add a DMARC TXT record to prevent email spoofing
- mediumdns
No DKIM record found
None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.
Configure DKIM signing with your email provider and publish the public key in DNS
- 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
- mediumheaders
Missing x-frame-options
X-Frame-Options is missing. The site may be vulnerable to clickjacking.
Add X-Frame-Options: DENY or SAMEORIGIN header
- mediumstructured data
Missing @type in schema
A structured data object has no @type
Add a @type property (e.g. Organization, WebSite)
- mediumaccessibility
Missing main landmark
No <main> element or role="main" found
Wrap primary content in a <main> element for screen reader navigation
- mediumaccessibility
No skip navigation link
No skip-to-content link at the top of the page
Add a visually hidden skip link as the first focusable element
- 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
- mediumuptime checker
Intermittent failures
1 of 3 requests failed
Investigate server stability — intermittent failures hurt user experience and SEO
- mediumbrand checker
Missing favicon
No favicon link tag found
Add a favicon for brand recognition in browser tabs and bookmarks
- mediumlog analyzer
Server version exposed
Server header reveals version: Apache/2.4.66 (Debian)
Remove version numbers from the Server header to reduce attack surface
Low (17)
- lowdns
No IPv6 (AAAA) records
The domain has no AAAA records for IPv6 connectivity
Add AAAA DNS records for IPv6 support
- lowdns
Only one MX record (no redundancy)
A single MX record means no failover if the mail server goes down.
Add a secondary MX record for email redundancy
- 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: Apache/2.4.66 (Debian)
Remove or obfuscate the Server header to reduce information leakage
- lowheaders
Missing Cache-Control header
No Cache-Control header — browser caching is undefined
Add Cache-Control with appropriate max-age for static and dynamic resources
- lowmeta
Meta description too long
Description is 197 characters (recommended: 120-160)
Shorten the meta description to 120-160 characters
- lowmeta
Missing favicon
No favicon link tag found
Add a favicon for better browser tab recognition
- lowstructured data
Missing Organization schema
No Organization or LocalBusiness structured data found
Add Organization schema with name, logo, and contact info
- lowstructured data
Missing WebSite schema
No WebSite structured data found
Add WebSite schema with SearchAction for sitelinks search box
- lowaccessibility
Missing navigation landmark
No <nav> element or role="navigation" found
Wrap navigation links in a <nav> element
- 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 or news presence
No press pages found on the site and no external news mentions detected
Create a /news or /press page with company updates — this builds authority and earns links
- lowbrand checker
No web app manifest
No manifest.json linked — PWA features unavailable
Add a web app manifest for installability and brand customization
- lowpage experience
Popup elements detected
Found 2 popup/overlay element(s) — likely consent banners
Ensure popups don't cover main content excessively, especially on mobile
- lowpage experience
No lazy loading on images
92 images without lazy loading
Add loading="lazy" to below-the-fold images for faster initial page load
AI Fix Prompt
Salin arahan ini ke dalam ChatGPT atau Claude untuk mendapatkan panduan pembaikan langkah demi langkah
Fix all SEO issues found in the audit of ffme.fr.
Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.
```json
{
"domain": "ffme.fr",
"scores": {
"overall": 59,
"performance": 0,
"seo": 90,
"accessibility": 51,
"bestPractices": 72,
"security": 29
},
"findings": [
{
"module": "dns",
"severity": "medium",
"title": "Missing DMARC record",
"description": "No DMARC policy found at _dmarc subdomain.",
"recommendation": "Add a DMARC TXT record to prevent email spoofing"
},
{
"module": "dns",
"severity": "medium",
"title": "No DKIM record found",
"description": "None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.",
"recommendation": "Configure DKIM signing with your email provider and publish the public key in DNS"
},
{
"module": "headers",
"severity": "high",
"title": "Missing strict-transport-security",
"description": "HSTS header is missing. The site may be vulnerable to downgrade attacks.",
"recommendation": "Add Strict-Transport-Security header with max-age of at least 31536000"
},
{
"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": "headers",
"severity": "medium",
"title": "Missing x-frame-options",
"description": "X-Frame-Options is missing. The site may be vulnerable to clickjacking.",
"recommendation": "Add X-Frame-Options: DENY or SAMEORIGIN header"
},
{
"module": "ssl",
"severity": "high",
"title": "SSL certificate not found",
"description": "Could not retrieve SSL certificate",
"recommendation": "Ensure the site has a valid SSL certificate installed"
},
{
"module": "structured-data",
"severity": "medium",
"title": "Missing @type in schema",
"description": "A structured data object has no @type",
"recommendation": "Add a @type property (e.g. Organization, WebSite)"
},
{
"module": "cookies",
"severity": "high",
"title": "Module failed",
"description": "The operation was aborted due to timeout",
"recommendation": "Try scanning again"
},
{
"module": "cookies",
"severity": "high",
"title": "Module failed",
"description": "The operation was aborted due to timeout",
"recommendation": "Try scanning again"
},
{
"module": "cookies",
"severity": "high",
"title": "Module failed",
"description": "The operation was aborted due to timeout",
"recommendation": "Try scanning again"
},
{
"module": "cookies",
"severity": "high",
"title": "Module failed",
"description": "The operation was aborted due to timeout",
"recommendation": "Try scanning again"
},
{
"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": "accessibility",
"severity": "medium",
"title": "No skip navigation link",
"description": "No skip-to-content link at the top of the page",
"recommendation": "Add a visually hidden skip link as the first focusable element"
},
{
"module": "accessibility",
"severity": "high",
"title": "1 buttons without accessible name",
"description": "Buttons with no text, aria-label, or title are invisible to screen readers",
"recommendation": "Add visible text or aria-label to all buttons"
},
{
"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": "layout-scan",
"severity": "high",
"title": "Could not fetch page",
"description": "Failed to fetch the page for layout analysis",
"recommendation": "Ensure the site is accessible"
},
{
"module": "uptime-checker",
"severity": "medium",
"title": "Intermittent failures",
"description": "1 of 3 requests failed",
"recommendation": "Investigate server stability — intermittent failures hurt user experience and SEO"
},
{
"module": "brand-checker",
"severity": "medium",
"title": "Missing favicon",
"description": "No favicon link tag found",
"recommendation": "Add a favicon for brand recognition in browser tabs and bookmarks"
},
{
"module": "log-analyzer",
"severity": "medium",
"title": "Server version exposed",
"description": "Server header reveals version: Apache/2.4.66 (Debian)",
"recommendation": "Remove version numbers from the Server header to reduce attack surface"
}
]
}
```Cadangan untuk industri anda
- 1Pastikan pematuhan WCAG 2.1 AA
- 2Laksanakan semua pengepala keselamatan yang disyorkan
- 3Pastikan peta laman merangkumi semua halaman penting
- 4Optimumkan masa muat halaman kepada bawah 2 saat
- 5Pastikan reka bentuk responsif pada semua halaman
Senarai Semak SEO untuk Umum
Petua untuk laman web Bercampur
- →Tentukan halaman pendaratan yang jelas untuk setiap segmen
- →Gunakan strategi meta yang berbeza bagi setiap kumpulan halaman
- →Segmenkan peta laman mengikut jenis kandungan
Konteks SEO Tempatan
Perancis memerlukan kandungan berbahasa Perancis untuk carian tempatan dan mempunyai peraturan RGPD yang ketat.
Gunakan Ctrl+P / Cmd+P untuk menyimpan sebagai PDF