Laporan SEO: oci.fr
Dijana pada 1 Mei 2026 · 38 penemuan · 11.0s
Perniagaan perkhidmatan perlu menguasai hasil carian tempatan dengan data NAP yang tepat, ulasan dan isyarat tempatan untuk menarik pelanggan berdekatan.
Pecahan Skor
Skor purata Perniagaan Tempatan: 54
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 (36)
Kritikal (3)
- 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
- highaccessibility
13 form fields without labels
Form inputs without associated labels are inaccessible
Use <label for="id"> or aria-label on every form field
- highpage experience
Intrusive interstitials detected
Found 6 potential popup/overlay elements
Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties
Medium (14)
- 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)
- mediumrobots
No sitemap in robots.txt
robots.txt does not reference a sitemap
Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt
- mediumtechnology
Render-blocking scripts
5 scripts load synchronously without async/defer
Add async or defer to non-critical scripts to improve page load speed
- mediumtechnology
Mixed content detected
1 resources loaded over HTTP on an HTTPS page
Update all resource URLs to use HTTPS
- mediumcontent
Multiple H1 tags
Found 4 H1 tags (recommended: exactly 1)
Use only one H1 per page; use H2-H6 for subsections
- mediumcontent
Very low text-to-HTML ratio
Text/HTML ratio is 2% (recommended: >5%)
Increase meaningful text content relative to HTML markup
- mediumcontent
External links without noopener
8 external links with target="_blank" lack rel="noopener"
Add rel="noopener noreferrer" to all target="_blank" links
- mediumaccessibility
Potential color contrast issues
52 elements with very light text colors detected
Ensure text meets WCAG AA contrast ratio (4.5:1 for normal text, 3:1 for large text)
- 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
- mediumcrawl budget
No sitemap.xml found
sitemap.xml returned HTTP 404
Create a sitemap.xml to help search engines discover all pages
Low (19)
- 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'
- 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: nginx
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
- 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
- lowtechnology
Many inline scripts
35 inline <script> blocks found
Move inline scripts to external files for caching and CSP compliance
- lowtechnology
Many external CSS files
60 external stylesheets loaded
Consider bundling CSS files to reduce HTTP requests
- lowmobile
Missing autocomplete attributes
4 form fields lack autocomplete hints
Add autocomplete attributes (email, tel, name) for faster mobile form filling
- lowmobile
Missing inputmode attributes
3 numeric fields lack inputmode hints
Add inputmode="numeric" or "tel" to show the right keyboard
- lowmobile
Unresponsive images
10 images lack srcset or responsive sizing
Use srcset and sizes attributes for responsive 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 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
No lazy loading on images
27 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 oci.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": "oci.fr",
"scores": {
"overall": 81,
"performance": 0,
"seo": 88,
"accessibility": 77,
"bestPractices": 86,
"security": 74
},
"findings": [
{
"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": "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": "robots",
"severity": "medium",
"title": "No sitemap in robots.txt",
"description": "robots.txt does not reference a sitemap",
"recommendation": "Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt"
},
{
"module": "technology",
"severity": "medium",
"title": "Render-blocking scripts",
"description": "5 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": "1 resources loaded over HTTP on an HTTPS page",
"recommendation": "Update all resource URLs to use HTTPS"
},
{
"module": "content",
"severity": "medium",
"title": "Multiple H1 tags",
"description": "Found 4 H1 tags (recommended: exactly 1)",
"recommendation": "Use only one H1 per page; use H2-H6 for subsections"
},
{
"module": "content",
"severity": "medium",
"title": "Very low text-to-HTML ratio",
"description": "Text/HTML ratio is 2% (recommended: >5%)",
"recommendation": "Increase meaningful text content relative to HTML markup"
},
{
"module": "content",
"severity": "medium",
"title": "External links without noopener",
"description": "8 external links with target=\"_blank\" lack rel=\"noopener\"",
"recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
},
{
"module": "accessibility",
"severity": "high",
"title": "13 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": "Potential color contrast issues",
"description": "52 elements with very light text colors detected",
"recommendation": "Ensure text meets WCAG AA contrast ratio (4.5:1 for normal text, 3:1 for large text)"
},
{
"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": "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": "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": "page-experience",
"severity": "high",
"title": "Intrusive interstitials detected",
"description": "Found 6 potential popup/overlay elements",
"recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
}
]
}
```Cadangan untuk industri anda
- 1Optimumkan profil Google Perniagaan
- 2Tambah skema Service/LocalBusiness
- 3Sepadukan ulasan pelanggan dengan skema Review
- 4Pastikan data NAP konsisten di semua halaman
- 5Cipta profil dalam direktori perniagaan tempatan
Senarai Semak SEO untuk Perniagaan Tempatan
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