helsahair.com
Helsa Hair - Saç Ekim Merkezi
AI Helsa Hair SEO analizi: 79 puanla güçlü ama kritik sorunlar var.
Helsa Hair web sitesi, 79 puanla iyi bir SEO performansı sergiliyor. Ancak, canonical etiketi eksikliği ve WWW yönlendirmesi sorunları gibi kritik 3 sorun bulunuyor. Ayrıca, güvenlik ve erişilebilirlik alanlarında da iyileştirmelere ihtiyaç var.
Canonical Etiketi Ekle
Sayfanıza uygun bir <link rel="canonical"> etiketi ekleyin.
WWW Yönlendirmesi Sağlayın
www ve www'suz sürümü tek bir kanonik URL'ye yönlendirin.
Özel 404 Sayfası Oluşturun
Var olmayan sayfalar için özel bir 404 sayfası oluşturun.
Güvenlik Başlıklarını Ekleyin
HSTS ve X-Frame-Options başlıklarını ekleyin.
Yapısal Veri Ekleyin
Sayfanızda yapısal veri (JSON-LD, microdata) kullanın.
Form Etiketlerini Düzeltin
Form alanlarına uygun etiketler ekleyin.
Meta Açıklamayı Geliştirin
Meta açıklamanızı 150-160 karakter arasında olacak şekilde güncelleyin.
› Sorunları yapay zekâ ajanıyla düzeltin Claude Code · Codex · Cursor için hazır prompt
Bu prompt, rapordaki tüm hata ve uyarıları çalışma kurallarıyla birlikte içerir. Kopyalayıp sitenizin kod tabanında çalışan bir yapay zekâ kodlama ajanına verin; bulguları önem sırasıyla düzeltir.
Google PageSpeed
Yerel Lighthouse 13.4.1› Öneriler ve teşhisler 23 bulgu
Resimlerin indirme süresini kısaltmak, sayfanın algılanan yükleme süresini ve LCP'yi daha iyi hale getirebilir. Resim boyutunu optimize etme hakkında daha fazla bilgi edinin.
Uzun önbellek ömrü, sayfanızda tekrarlanan ziyaretleri hızlandırabilir. Önbelleğe alma hakkında daha fazla bilgi edinin.
JS'yi ayrıştırma, derleme ve yürütme için harcanan zamanı kısaltmayı düşünün. Daha küçük JS yüklerinin sağlanması bu konuda yardımcı olabilir. JavaScript yürütme süresini nasıl azaltacağınızı öğrenin.
Ağ etkinliğinin kullandığı bayt sayısını azaltılmaları gerekene kadar kullanılmayan JavaScript'i azaltıp komut dosyalarını erteleyin. Kullanılmayan JavaScript'i nasıl azaltacağınızı öğrenin.
İstekler sayfanın ilk oluşturma işlemini engelliyor. Bu durum, LCP'yi geciktirebilir. Erteleme veya satır içine yerleştirme, bu ağ isteklerini kritik yoldan uzaklaştırabilir.
JS'yi ayrıştırma, derleme ve yürütme için harcanan zamanı kısaltabilirsiniz. Daha küçük JS yüklerinin sağlanması bu konuda yardımcı olabilir. Ana iş parçacığının işini nasıl azaltacağınızı öğrenin.
Ağ etkinliğinin kullandığı bayt sayısını azaltmak üzere stil sayfalarında kullanılmayan kuralları azaltıp ekranın üst kısmında içerik için kullanılmayan CSS'yi erteleyin. Kullanılmayan CSS'yi nasıl azaltacağınızı öğrenin.
CSS dosyalarının küçültülmesi ağ yükü boyutlarını azaltabilir. CSS'yi nasıl sadeleştireceğinizi öğrenin.
Metnin her zaman görünmesini sağlamak için font-display özelliğini swap veya optional olarak ayarlayabilirsiniz. swap, yazı tipi metriği geçersiz kılmalarıyla düzen kaymalarını azaltmak için daha fazla optimize edilebilir.
LCP resmini HTML'den anında bulunabilir hale getirerek ve geç yüklemeden kaçınarak LCP'yi optimize edin.
Sayfaların daha kolay yüklenmesi için zincir uzunluğunu azaltarak, kaynakların indirme boyutunu küçülterek veya gereksiz kaynakların indirilmesini erteleyerek kritik istek zinciri oluşturmaktan kaçının.
JavaScript dosyalarının küçültülmesi yük boyutlarını azaltıp komut dosyası ayrıştırma süresini kısaltabilir. JavaScript'i nasıl sadeleştireceğinizi öğrenin.
Büyük ağ yükleri kullanıcılar için parasal maliyet anlamına gelir ve yükleme sürelerinin uzamasında yüksek bir etkiye sahiptir. Yük boyutlarını nasıl düşüreceğinizi öğrenin.
Düzen kaymalarını azaltıp CLS'yi iyileştirmek için görsel öğelerde genişliği ve yüksekliği açıkça belirtilmiş şekilde ayarlayın. Resim boyutlarını nasıl belirleyeceğinizi öğrenin.
Çoğu gezinme işlemi, önceki sayfaya geri dönerek veya tekrar ileri giderek yapılır. Geri-ileri önbellek (bfcache), bu geri dönme gezinmelerini hızlandırabilir. Bfcache hakkında daha fazla bilgi
Ekran okuyucu kullanıcıları, çerçevelerin içeriklerinin açıklanması için çerçeve başlıklarından yararlanır. Çerçeve başlıkları hakkında daha fazla bilgi edinin.
Düzey atlamayan gerektiği gibi sıralanmış başlıklar sayfanın anlamsal yapısını iletir. Böylece, yardımcı teknolojiler kullanılırken gezinmeyi ve anlaşılmayı kolaylaştırır. Başlık sıralaması hakkında daha fazla bilgi edinin.
Etkili etiket içermeyen <form> öğeleri, ekran okuyucu kullanıcılarının can sıkıcı deneyimler yaşamasına neden olabilir. select öğesi hakkında daha fazla bilgi edinin.
Yeterli boyut ve boşluğa sahip dokunma hedefleri, küçük kontrol düğmelerini kullanmakta sorun yaşayan kullanıcıların hedefleri etkinleştirmesine yardımcı olur. Dokunma hedefleri hakkında daha fazla bilgi edinin.
Bir tane ana belirgin işaret, ekran okuyucu kullanıcılarının web sayfasında gezinmesine yardımcı olur. Önemli noktalar hakkında daha fazla bilgi edinin.
Üçüncü taraf çerezleri bazı bağlamlarda engellenebilir. Üçüncü taraf çerezi kısıtlamalarına hazırlanma hakkında daha fazla bilgi edinin.
Konsola kaydedilen hatalar çözülmemiş problemleri belirtir Bunlar, ağ istek hatalarından ve diğer tarayıcı sorunlarından gelebilir. Konsol teşhis denetlemesindeki hatalar hakkında daha fazla bilgi edinin.
Chrome Geliştirici Araçları'ndaki Issues paneline kaydedilen sorunlar, çözülmemiş sorunları ifade eder. Bunlar ağ istek hatalarından, yetersiz güvenlik kontrollerinden ve diğer tarayıcı sorunlarından gelebilir. Tüm sorunlarla ilgili ayrıntılı bilgiyi, Chrome Geliştirici Araçları'nın Issues panelinde
› Öneriler ve teşhisler 22 bulgu
Uzun önbellek ömrü, sayfanızda tekrarlanan ziyaretleri hızlandırabilir. Önbelleğe alma hakkında daha fazla bilgi edinin.
Resimlerin indirme süresini kısaltmak, sayfanın algılanan yükleme süresini ve LCP'yi daha iyi hale getirebilir. Resim boyutunu optimize etme hakkında daha fazla bilgi edinin.
İstekler sayfanın ilk oluşturma işlemini engelliyor. Bu durum, LCP'yi geciktirebilir. Erteleme veya satır içine yerleştirme, bu ağ isteklerini kritik yoldan uzaklaştırabilir.
Ağ etkinliğinin kullandığı bayt sayısını azaltılmaları gerekene kadar kullanılmayan JavaScript'i azaltıp komut dosyalarını erteleyin. Kullanılmayan JavaScript'i nasıl azaltacağınızı öğrenin.
Metnin her zaman görünmesini sağlamak için font-display özelliğini swap veya optional olarak ayarlayabilirsiniz. swap, yazı tipi metriği geçersiz kılmalarıyla düzen kaymalarını azaltmak için daha fazla optimize edilebilir.
JS'yi ayrıştırma, derleme ve yürütme için harcanan zamanı kısaltabilirsiniz. Daha küçük JS yüklerinin sağlanması bu konuda yardımcı olabilir. Ana iş parçacığının işini nasıl azaltacağınızı öğrenin.
Ağ etkinliğinin kullandığı bayt sayısını azaltmak üzere stil sayfalarında kullanılmayan kuralları azaltıp ekranın üst kısmında içerik için kullanılmayan CSS'yi erteleyin. Kullanılmayan CSS'yi nasıl azaltacağınızı öğrenin.
DOM durumunda yapılan bir değişiklik nedeniyle stiller geçersiz kılındıktan sonra JavaScript, geometrik özellikler (ör. offsetWidth) sorguladığında zorunlu yeniden düzenleme gerçekleşir. Bu durum, performansın düşmesine neden olabilir. Zorunlu yeniden düzenlemeler ve olası çözümleri hakkında daha fa
LCP resmini HTML'den anında bulunabilir hale getirerek ve geç yüklemeden kaçınarak LCP'yi optimize edin.
Sayfaların daha kolay yüklenmesi için zincir uzunluğunu azaltarak, kaynakların indirme boyutunu küçülterek veya gereksiz kaynakların indirilmesini erteleyerek kritik istek zinciri oluşturmaktan kaçının.
CSS dosyalarının küçültülmesi ağ yükü boyutlarını azaltabilir. CSS'yi nasıl sadeleştireceğinizi öğrenin.
Büyük ağ yükleri kullanıcılar için parasal maliyet anlamına gelir ve yükleme sürelerinin uzamasında yüksek bir etkiye sahiptir. Yük boyutlarını nasıl düşüreceğinizi öğrenin.
Düzen kaymalarını azaltıp CLS'yi iyileştirmek için görsel öğelerde genişliği ve yüksekliği açıkça belirtilmiş şekilde ayarlayın. Resim boyutlarını nasıl belirleyeceğinizi öğrenin.
Çoğu gezinme işlemi, önceki sayfaya geri dönerek veya tekrar ileri giderek yapılır. Geri-ileri önbellek (bfcache), bu geri dönme gezinmelerini hızlandırabilir. Bfcache hakkında daha fazla bilgi
Ekran okuyucu kullanıcıları, çerçevelerin içeriklerinin açıklanması için çerçeve başlıklarından yararlanır. Çerçeve başlıkları hakkında daha fazla bilgi edinin.
Düzey atlamayan gerektiği gibi sıralanmış başlıklar sayfanın anlamsal yapısını iletir. Böylece, yardımcı teknolojiler kullanılırken gezinmeyi ve anlaşılmayı kolaylaştırır. Başlık sıralaması hakkında daha fazla bilgi edinin.
Etkili etiket içermeyen <form> öğeleri, ekran okuyucu kullanıcılarının can sıkıcı deneyimler yaşamasına neden olabilir. select öğesi hakkında daha fazla bilgi edinin.
Yeterli boyut ve boşluğa sahip dokunma hedefleri, küçük kontrol düğmelerini kullanmakta sorun yaşayan kullanıcıların hedefleri etkinleştirmesine yardımcı olur. Dokunma hedefleri hakkında daha fazla bilgi edinin.
Bir tane ana belirgin işaret, ekran okuyucu kullanıcılarının web sayfasında gezinmesine yardımcı olur. Önemli noktalar hakkında daha fazla bilgi edinin.
Üçüncü taraf çerezleri bazı bağlamlarda engellenebilir. Üçüncü taraf çerezi kısıtlamalarına hazırlanma hakkında daha fazla bilgi edinin.
Konsola kaydedilen hatalar çözülmemiş problemleri belirtir Bunlar, ağ istek hatalarından ve diğer tarayıcı sorunlarından gelebilir. Konsol teşhis denetlemesindeki hatalar hakkında daha fazla bilgi edinin.
Chrome Geliştirici Araçları'ndaki Issues paneline kaydedilen sorunlar, çözülmemiş sorunları ifade eder. Bunlar ağ istek hatalarından, yetersiz güvenlik kontrollerinden ve diğer tarayıcı sorunlarından gelebilir. Tüm sorunlarla ilgili ayrıntılı bilgiyi, Chrome Geliştirici Araçları'nın Issues panelinde
Kategori skorları
C · İyi — genel 79/100Başlık yapısı
35 başlık · H1→H6 ana hattıKural detayları
› Temel SEO 15 geçti · 3 uyarı · 1 hata — skor 95
Title, meta açıklama, canonical ve temel HTML etiketlerinin doğruluğu.
Nasıl düzeltirim?
Neden önemli: Canonical etiketi, aynı içeriğe birden çok URL ile erişilebildiğinde hangi adresin "asıl" olduğunu bildirir; kopya içerik sorununu önler.
Çözüm: <head> içine <link rel="canonical" href="asıl-URL"> ekleyin; her sayfa kendi tam URL'sini göstersin.
ayrıntılar · 4 öğe
Nasıl düzeltirim?
Neden önemli: Çok kısa title değerlendirilebilir sinyal taşımaz; çok uzunu arama sonuçlarında kesilir.
Çözüm: Başlığı 30-60 karakter aralığında tutun; önemli kelimeleri başa alın, marka adını sona koyun.
ayrıntılar · 4 öğe
Nasıl düzeltirim?
Neden önemli: Kısa açıklama alanı boşa harcar; uzun açıklama sonuçlarda "..." ile kesilir.
Çözüm: Açıklamayı 120-160 karakter aralığında yazın; her sayfa için benzersiz olsun.
Nasıl düzeltirim?
Neden önemli: Bozuk ya da göreli canonical, arama motorunun yanlış adresi asıl sayfa sanmasına yol açar.
Çözüm: Canonical değerini protokol dahil mutlak URL yapın (https://... ile başlasın) ve çalışan bir adresi göstersin.
› Teknik SEO 11 geçti · 0 uyarı · 2 hata — skor 100
robots.txt, sitemap, yönlendirmeler ve sunucu yanıtları gibi teknik altyapı.
ayrıntılar · 4 öğe
Nasıl düzeltirim?
Neden önemli: www'lu ve www'suz sürümün ikisi de yanıt veriyorsa site iki kopya olarak değerlendirilebilir.
Çözüm: Bir sürümü asıl seçin, diğerini sunucu düzeyinde 301 ile yönlendirin.
ayrıntılar · 3 öğe
Nasıl düzeltirim?
Neden önemli: Varsayılan sunucu hata sayfası ziyaretçiyi çıkmaza sokar; özel 404 sayfası kullanıcıyı sitede tutar.
Çözüm: Site tasarımınızla uyumlu, arama kutusu ve önemli bağlantılar içeren özel bir 404 sayfası hazırlayın.
› Performans 14 geçti · 7 uyarı · 1 hata — skor 90
Core Web Vitals ve sayfa hızı metrikleri.
ayrıntılar · 11 öğe
- assets/css/bootstrap.min.css
- assets/css/animate.min.css
- assets/css/swiper-bundle.min.css
- cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css
- fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&famil…
- assets/css/style.css?v=1.0.0
- assets/css/hair-analysis.css
- assets/css/sweetalert2.min.css
Nasıl düzeltirim?
Neden önemli: Çok sayıda/büyük CSS dosyası indirme ve işleme süresini uzatır.
Çözüm: CSS dosyalarını birleştirip küçültün, kullanılmayan kuralları ayıklayın (PurgeCSS vb.), 3 dosyadan azı hedefleyin.
ayrıntılar · 2 öğe
Nasıl düzeltirim?
Neden önemli: INP, kullanıcı etkileşimine tepki gecikmesini ölçer; yavaş tepki site "donuk" hissettirir.
Çözüm: Uzun JavaScript görevlerini bölün, ağır işlemleri web worker'a taşıyın, gereksiz üçüncü parti betikleri kaldırın.
ayrıntılar · 6 öğe
- fonts.googleapis.com
- fonts.gstatic.com
- fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&famil…
Nasıl düzeltirim?
Neden önemli: Yanlış font yüklemesi metnin geç görünmesine (FOIT) ya da zıplamasına neden olur.
Çözüm: font-display: swap kullanın, fontları preload edin, WOFF2 biçimini tercih edin, kullanılmayan ağırlıkları yüklemeyin.
ayrıntılar · 18 öğe
- fonts.googleapis.com
- fonts.gstatic.com
- www.google-analytics.com
- www.googletagmanager.com
- connect.facebook.net
- platform.twitter.com
- cdn.jsdelivr.net
- cdnjs.cloudflare.com
- unpkg.com
- ajax.googleapis.com
Nasıl düzeltirim?
Neden önemli: Üçüncü parti alan adlarına bağlantı kurulumu (DNS+TLS) her istekte zaman kaybettirir.
Çözüm: Kritik üçüncü parti kaynaklar için <link rel="preconnect" href="https://ornek-cdn.com"> ekleyin.
ayrıntılar · 6 öğe
Nasıl düzeltirim?
Neden önemli: LCP adayı görsel önceliklendirilmezse tarayıcı onu geç indirir.
Çözüm: Ana görsele <link rel="preload"> ya da fetchpriority="high" ekleyin; CSS arkaplanı yerine <img> tercih edin.
ayrıntılar · 4 öğe
Nasıl düzeltirim?
Neden önemli: Önbellek başlığı olmayan statik dosyalar her ziyarette yeniden indirilir.
Çözüm: Statik varlıklara uzun Cache-Control verin (ör. max-age=31536000, immutable) ve dosya adlarını sürümleyin.
ayrıntılar · 6 öğe
Nasıl düzeltirim?
Neden önemli: Boşluk ve yorumlarla şişmiş CSS gereksiz bayt taşır.
Çözüm: Yayın sürecinde CSS'i minify edin (cssnano, esbuild, CMS eklentileri).
ayrıntılar · 7 öğe
Nasıl düzeltirim?
Neden önemli: Küçültülmemiş JavaScript indirme ve ayrıştırma süresini uzatır.
Çözüm: Yayın sürecinde JS'i minify edin (terser, esbuild); büyük satır içi blokları harici sürümlenmiş dosyalara taşıyın.
› Bağlantılar 13 geçti · 5 uyarı · 1 hata — skor 92
İç ve dış bağlantıların sağlığı ve kalitesi.
ayrıntılar · 2 öğe
| Öğe | Onclick | Metin |
|---|---|---|
| a | if(window.innerWidth < 992) { window.location.href='before-after'; return false; } | Önce/Sonra |
Nasıl düzeltirim?
Neden önemli: Yalnızca JavaScript onclick ile çalışan "bağlantılar" arama motorlarınca takip edilemez.
Çözüm: Gezinme için gerçek <a href> kullanın; JS davranışını href'in üzerine ekleyin.
ayrıntılar · 4 öğe
- twitter.com/helsahair HTTP 404
Nasıl düzeltirim?
Neden önemli: Erişilemeyen dış bağlantılar kullanıcı deneyimini bozar ve bakımsız içerik izlenimi verir.
Çözüm: Listelenen dış bağlantıları güncelleyin, arşiv sürümüne (web.archive.org) bağlayın ya da kaldırın.
ayrıntılar · 5 öğe
- /cdn-cgi/l/email-protection#771e191118371f121b04161f161e055914181a Empty anchor text
- / Empty anchor text
- instagram.com/helsahairtr Empty anchor text
Nasıl düzeltirim?
Neden önemli: "Tıkla", "buraya" gibi bağlantı metinleri hedef sayfanın konusu hakkında hiçbir sinyal taşımaz.
Çözüm: Bağlantı metnini hedef sayfayı tarif edecek şekilde yazın (ör. "buraya tıklayın" yerine "SEO rehberini inceleyin").
ayrıntılar · 2 öğe
- # · "Hizmetlerimiz" · empty
Nasıl düzeltirim?
Neden önemli: javascript:, boş href gibi sahte bağlantılar tarayıcılar için anlamsızdır, erişilebilirliği de bozar.
Çözüm: Eylemler için <button> kullanın; gerçek gezinme için geçerli URL içeren <a href> bırakın.
ayrıntılar · 6 öğe
- /iletisim.php → https://helsahair.com/iletisim
- /en → https://helsahair.com/en/
- /de → https://helsahair.com/de/
Nasıl düzeltirim?
Neden önemli: Yönlendirme üzerinden geçen her iç bağlantı gereksiz bir HTTP isteği ekler ve değer aktarımını zayıflatır.
Çözüm: İç bağlantıları yönlendirmenin nihai hedefine güncelleyin (listede → ile gösterilen adres).
ayrıntılar · 4 öğe
- sa%C3%A7-analizi
Nasıl düzeltirim?
Neden önemli: #bolum bağlantısının hedefi sayfada yoksa tıklayan kullanıcı hiçbir yere gitmez.
Çözüm: Bağlantıdaki fragment ile hedef öğenin id'sinin birebir eşleştiğinden emin olun.
› Görseller 9 geçti · 5 uyarı · 0 hata — skor 89
Görsellerin optimizasyonu, alt metinleri ve formatları.
ayrıntılar · 15 öğe
- /assets/images/logo-2.png
- /assets/images/before-after/before_after_1750331620_5.webp
- /assets/images/before-after/before_after_1750331621_6.webp
- /assets/images/before-after/before_after_1750331621_7.webp
- /assets/images/before-after/before_after_1750331621_8.webp
- /assets/images/turkey.png
- /assets/images/united-kingdom.png
- /assets/images/germany.png
- /assets/images/icons/team-icon.svg
- /assets/images/icons/clinic-icon.svg
Nasıl düzeltirim?
Neden önemli: width/height verilmeyen görseller yüklenince sayfa zıplar (CLS artar).
Çözüm: Tüm <img> etiketlerine gerçek en-boy oranını koruyan width ve height öznitelikleri ekleyin.
ayrıntılar · 13 öğe
- /assets/images/before-after/before_after_1750331621_7.webp
- /assets/images/before-after/before_after_1750331621_8.webp
- /assets/images/turkey.png
- /assets/images/united-kingdom.png
- /assets/images/germany.png
- /assets/images/google-logo.webp
- /assets/images/icons/team-icon.svg
- /assets/images/icons/clinic-icon.svg
- /assets/images/icons/appointment-icon.svg
- /assets/images/index-about.webp
Nasıl düzeltirim?
Neden önemli: Ekran altındaki görsellerin hemen yüklenmesi ilk yüklemeyi gereksiz şişirir.
Çözüm: Ekran altında kalan görsellere loading="lazy" ekleyin (ilk görünümdekilere eklemeyin).
ayrıntılar · 4 öğe
Nasıl düzeltirim?
Neden önemli: WebP/AVIF, JPEG/PNG'ye göre %25-50 küçüktür; eski formatlar bant genişliği israfıdır.
Çözüm: Görselleri WebP ya da AVIF'e dönüştürün; eski tarayıcılar için <picture> ile yedek sunabilirsiniz.
ayrıntılar · 5 öğe
- /assets/images/kas-ekimi-hero.webp Filename suggests large image (contains "hero")
- /assets/images/sakal-ekimi-hero.webp Filename suggests large image (contains "hero")
Nasıl düzeltirim?
Neden önemli: Gösterim boyutundan çok daha büyük görseller gereksiz veri indirtir.
Çözüm: Görselleri gösterildikleri boyuta göre yeniden ölçekleyin ve sıkıştırın; srcset ile farklı boyutlar sunun.
ayrıntılar · 14 öğe
- /assets/images/logo-2.png
- /assets/images/before-after/before_after_1750331620_5.webp
- /assets/images/before-after/before_after_1750331621_6.webp
- /assets/images/before-after/before_after_1750331621_7.webp
- /assets/images/before-after/before_after_1750331621_8.webp
- /assets/images/turkey.png
- /assets/images/united-kingdom.png
- /assets/images/germany.png
- /assets/images/icons/team-icon.svg
- /assets/images/icons/clinic-icon.svg
Nasıl düzeltirim?
Neden önemli: Tek boyut görsel, mobil cihazlara masaüstü boyutunda iner.
Çözüm: <img srcset="..." sizes="..."> ile cihaz genişliğine uygun görsel sürümleri sunun.
› Güvenlik 9 geçti · 4 uyarı · 3 hata — skor 91
HTTPS, güvenlik başlıkları ve içerik güvenliği.
Nasıl düzeltirim?
Neden önemli: HSTS başlığı tarayıcıya "bu siteye yalnızca HTTPS ile bağlan" der; ilk istek dahil düşürme saldırılarını engeller.
Çözüm: Strict-Transport-Security: max-age=31536000; includeSubDomains başlığını ekleyin (emin olunca preload da).
Nasıl düzeltirim?
Neden önemli: Bu başlık olmadan siteniz başka sitede iframe içine alınıp tıklama korsanlığında (clickjacking) kullanılabilir.
Çözüm: X-Frame-Options: SAMEORIGIN başlığı ya da CSP frame-ancestors yönergesi ekleyin.
Nasıl düzeltirim?
Neden önemli: MIME sniffing ile tarayıcı, dosyayı beyan edilenden farklı türde çalıştırabilir; bu bir saldırı vektörüdür.
Çözüm: X-Content-Type-Options: nosniff başlığını ekleyin.
Nasıl düzeltirim?
Neden önemli: Content-Security-Policy, XSS saldırılarında enjekte edilen betiklerin çalışmasını engelleyen en güçlü savunmadır.
Çözüm: CSP başlığı tanımlayın; önce Content-Security-Policy-Report-Only ile test edip kaynak listenizi (script-src vb.) netleştirin.
ayrıntılar · 5 öğe
- google.com/search?sa=X&sca_esv=90893a3074fd3c08&tbm=lcl&sxsrf=AHTn8zquN… "Tüm Google Yorumlarını Görüntüle"
- instagram.com/helsahairtr "@helsahairtr"
- instagram.com/helsahairtr "[no text]"
Nasıl düzeltirim?
Neden önemli: target="_blank" bağlantılarda rel="noopener" yoksa açılan sayfa window.opener üzerinden sayfanıza erişebilir.
Çözüm: Yeni sekmede açılan tüm bağlantılara rel="noopener noreferrer" ekleyin.
Nasıl düzeltirim?
Neden önemli: Permissions-Policy, kamera/mikrofon/konum gibi API'lere erişimi sınırlar; yoksa gömülü içerikler bunları isteyebilir.
Çözüm: Kullanmadığınız özellikleri kapatan bir Permissions-Policy başlığı ekleyin (ör. camera=(), microphone=()).
Nasıl düzeltirim?
Neden önemli: Referrer başlığı ziyaretçinin geldiği tam URL'yi dış sitelere sızdırabilir.
Çözüm: Referrer-Policy: strict-origin-when-cross-origin başlığını ekleyin.
› Taranabilirlik 16 geçti · 2 uyarı · 0 hata — skor 97
Arama motorlarının siteyi tarama ve indeksleme yeteneği.
Nasıl düzeltirim?
Neden önemli: Canonical'ın yönlendiren ya da hata veren URL'yi göstermesi asıl sayfa sinyalini boşa düşürür.
Çözüm: Canonical'ı 200 dönen nihai URL'ye güncelleyin.
ayrıntılar · 4 öğe
- /assets/scss/
- /assets/fonts/
Nasıl düzeltirim?
Neden önemli: robots.txt'nin CSS/JS engellemesi, Google'ın sayfayı düzgün çizememesine yol açar.
Çözüm: robots.txt'te CSS, JS ve görsel klasörlerini engelleyen kuralları kaldırın.
› Yapısal Veri 8 geçti · 4 uyarı · 1 hata — skor 90
JSON-LD yapısal veri ve zengin sonuç uygunluğu.
ayrıntılar · 3 öğe
Nasıl düzeltirim?
Neden önemli: JSON-LD yapısal veri, arama motoruna içeriğinizi "anlatır" ve zengin sonuçların (yıldız, SSS, fiyat) kapısını açar.
Çözüm: Sayfa türünüze uygun JSON-LD ekleyin (Article, Product, Organization…); Google'ın Rich Results Test aracıyla doğrulayın.
Nasıl düzeltirim?
Neden önemli: Söz dizimi bozuk JSON-LD tamamen yok sayılır; emek boşa gider.
Çözüm: JSON'u doğrulayın (virgül/tırnak hataları tipiktir); Rich Results Test ile kontrol edin.
Nasıl düzeltirim?
Neden önemli: Bilinmeyen ya da yanlış @type değeri şemanın işlenmemesine neden olur.
Çözüm: schema.org'da tanımlı doğru türü kullanın (ör. BlogPosting, Product, LocalBusiness).
Nasıl düzeltirim?
Neden önemli: Zorunlu alanları eksik şema zengin sonuç üretmez; önerilen alanlar sonucu zenginleştirir.
Çözüm: Uyarıda listelenen alanları şemaya ekleyin (ör. Organization için sameAs, address).
Nasıl düzeltirim?
Neden önemli: WebSite şemasındaki potentialAction, arama sonucunda site içi arama kutusu (sitelinks searchbox) çıkarabilir.
Çözüm: WebSite şemasına SearchAction tanımı ekleyin (urlTemplate ile site içi arama adresiniz).
› Erişilebilirlik 4 geçti · 5 uyarı · 3 hata — skor 80
Sitenin tüm kullanıcılar için erişilebilirliği.
ayrıntılar · 6 öğe
| Tür | ID | Placeholder |
|---|---|---|
| text | name | Adınız Soyadınız |
| E-posta Adresiniz | ||
| tel | phone | Telefon Numaranız |
| select | service |
Nasıl düzeltirim?
Neden önemli: Etiketsiz form alanları ekran okuyucuda "boş kutu" olarak okunur.
Çözüm: Her inputa <label for> bağlayın ya da aria-label verin; placeholder tek başına yeterli değildir.
ayrıntılar · 8 öğe
- First heading is H5, should be H1
- H1 → H3 (skipped H2): "Ücretsiz Danışmanlık"
- H2 → H5 (skipped H3): "Can Coşar"
- H3 → H5 (skipped H4): "Hızlı Bağlantılar"
| From | To | Metin | Position |
|---|---|---|---|
| 1 | 3 | Ücretsiz Danışmanlık | 3 |
| 2 | 5 | Can Coşar | 15 |
| 3 | 5 | Hızlı Bağlantılar | 33 |
Nasıl düzeltirim?
Neden önemli: Atlayan başlık seviyeleri (H1→H4) ekran okuyucu gezinme yapısını bozar.
Çözüm: Başlıkları hiyerarşik sırayla kullanın; seviye atlamayın.
ayrıntılar · 3 öğe
- assets/videos/sac-ekimi-2.mp4 · No captions track or transcript found
Nasıl düzeltirim?
Neden önemli: Altyazısız video işitme engelli kullanıcılar için erişilmezdir.
Çözüm: Videolara altyazı (track/captions) ekleyin.
ayrıntılar · 7 öğe
| Etiket | Sınıf | Neden | Tür | ID |
|---|---|---|---|---|
| a | instagram-placeholder | Links need accessible names to describe their destination | ||
| a | instagram-placeholder | Links need accessible names to describe their destination | ||
| input | form-control | Form inputs need labels for screen readers | text | name |
| input | form-control | Form inputs need labels for screen readers | ||
| input | form-control | Form inputs need labels for screen readers | tel | phone |
Nasıl düzeltirim?
Neden önemli: Etiketi olmayan etkileşimli öğeler ekran okuyucu kullanıcıları için anlamsızdır.
Çözüm: Metinsiz düğme ve bağlantılara aria-label ekleyin ya da görünür metin verin.
ayrıntılar · 2 öğe
- main
- banner/header
Nasıl düzeltirim?
Neden önemli: header/main/nav/footer işaret bölgeleri ekran okuyucuda hızlı gezinmeyi sağlar.
Çözüm: Sayfayı semantik öğelerle yapılandırın: <header>, <nav>, <main>, <footer>.
ayrıntılar · 10 öğe
- instagram.com/helsahairtr "(empty)" · Link text too short or empty
| Metin | Adet |
|---|---|
| ana sayfa | 2 |
| i̇letişim | 2 |
| detaylı bilgi | 4 |
- "(empty)" - Link text too short or empty
- "(empty)" - Link text too short or empty
- "ana sayfa" used 2 times for different destinations
- "i̇letişim" used 2 times for different destinations
- "detaylı bilgi" used 4 times for different destinations
Nasıl düzeltirim?
Neden önemli: "Tıkla" gibi bağlamsız bağlantılar ekran okuyucunun bağlantı listesinde anlamsızdır.
Çözüm: Bağlantı metnini hedefi tarif edecek şekilde yazın.
ayrıntılar · 1 öğe
Nasıl düzeltirim?
Neden önemli: Atlama bağlantısı olmadan klavye kullanıcısı her sayfada tüm menüyü geçmek zorunda kalır.
Çözüm: Sayfa başına gizli "içeriğe atla" bağlantısı ekleyin (odaklanınca görünür olsun) ve ana içeriğe hedefleyin.
ayrıntılar · 4 öğe
| Öğe | Sorun |
|---|---|
| a | CSS sets small dimension (4px) on interactive elements |
| a | CSS sets small dimension (20px) on interactive elements |
| a | CSS sets small dimension (20px) on interactive elements |
Nasıl düzeltirim?
Neden önemli: Küçük dokunma hedefleri mobilde yanlış tıklamalara yol açar.
Çözüm: Tıklanabilir öğeleri en az 44×44 px yapın; aralarına boşluk koyun.
› İçerik 13 geçti · 4 uyarı · 0 hata — skor 93
İçerik kalitesi, uzunluğu ve yapısı.
ayrıntılar · 10 öğe
| Kelime | Adet | Yoğunluk |
|---|---|---|
| ekimi | 35 | %3,28 |
| lar | 25 | %2,34 |
| Kelime | Adet | Yoğunluk |
|---|---|---|
| ekimi | 35 | %3,28 |
| lar | 25 | %2,34 |
| bir | 22 | %2,06 |
Nasıl düzeltirim?
Neden önemli: Aynı kelimenin aşırı tekrarı doğal olmayan metin sinyalidir; sıralama düşüşüne yol açabilir.
Çözüm: Listelenen kelimelerin tekrarını azaltın; eş anlamlılar ve doğal anlatım kullanın (%2 altı yoğunluk hedefleyin).
ayrıntılar · 20 öğe
- Document should start with an <h1>, but starts with <h5>
- Skipped heading level: <h1> followed by <h3> (missing h2)
- Skipped heading level: <h2> followed by <h5> (missing h3)
- Skipped heading level: <h3> followed by <h5> (missing h4)
| Seviye | Metin |
|---|---|
| 5 | BAŞARILI SAÇ EKİM SONUÇLARIMIZ |
| 1 | Saçlarınıza Yeniden ... |
| 3 | Ücretsiz Danışmanlık |
| 3 | Helsa Hair |
| 3 | Kliniğimiz |
| 3 | Randevu Al |
| 2 | Helsa Hair Hakkında |
| 2 | Uzman Olduğumuz Tedavi Yöntemleri |
| 3 | DHI FUE Saç Ekimi |
| 3 | Safir FUE Saç Ekimi |
| 3 | Kaş Ekimi |
| 3 | Sakal Ekimi |
| 2 | Başarılı Saç Ekimi Sonuçlarımız |
| 2 | Müşteri Yorumları |
| 5 | Can Coşar |
Nasıl düzeltirim?
Neden önemli: Karışık başlık yapısı içeriğin taslağını hem kullanıcı hem arama motoru için bozar.
Çözüm: H1→H2→H3 sırasını koruyun; görsel boyut için başlık seviyesi seçmeyin, CSS kullanın.
ayrıntılar · 9 öğe
| Seviye | Metin | Uzunluk | Sorun |
|---|---|---|---|
| 3 | Kaş Ekimi | 9 | çok kısa |
| 5 | Can Coşar | 9 | çok kısa |
| 5 | İletişim | 8 | çok kısa |
Nasıl düzeltirim?
Neden önemli: Aşırı uzun başlıklar taranabilirliği düşürür.
Çözüm: Başlıkları kısa ve öz tutun (~70 karakter altı).
ayrıntılar · 5 öğe
Nasıl düzeltirim?
Neden önemli: Metnin HTML koduna oranı çok düşükse sayfa "içerikten çok kod" taşıyor demektir.
Çözüm: Gereksiz sarmalayıcı ve satır içi kod bloklarını azaltın; gerçek metin içeriğini artırın.
› Sosyal Medya 2 geçti · 1 uyarı · 6 hata — skor 88
Open Graph ve Twitter kart etiketleri, sosyal sinyaller.
Nasıl düzeltirim?
Neden önemli: og:title olmadan paylaşımlarda sayfa başlığı rastgele seçilir.
Çözüm: <meta property="og:title" content="..."> ekleyin; paylaşım için çekici bir başlık yazın.
Nasıl düzeltirim?
Neden önemli: og:description, paylaşım kartındaki özet metni belirler.
Çözüm: <meta property="og:description"> ekleyin; meta açıklamadan farklı, paylaşıma yönelik olabilir.
Nasıl düzeltirim?
Neden önemli: og:image olmadan paylaşım kartı görselsiz ya da rastgele görselli çıkar; tıklanma ciddi düşer.
Çözüm: 1200×630 boyutunda bir paylaşım görseli hazırlayıp <meta property="og:image"> ile mutlak URL olarak bildirin.
Nasıl düzeltirim?
Neden önemli: Küçük og:image büyük kart yerine küçük küçük görüntülenir.
Çözüm: En az 1200×630 piksel görsel kullanın (1.91:1 oran).
Nasıl düzeltirim?
Neden önemli: twitter:card etiketi olmadan X/Twitter paylaşımı düz bağlantı olarak görünür.
Çözüm: <meta name="twitter:card" content="summary_large_image"> ekleyin.
Nasıl düzeltirim?
Neden önemli: og:url, paylaşım sinyallerinin tek kanonik adreste toplanmasını sağlar.
Çözüm: <meta property="og:url"> ile sayfanın canonical URL'sini bildirin.
Nasıl düzeltirim?
Neden önemli: og:url ile canonical farklıysa paylaşım sinyalleri iki adrese bölünür.
Çözüm: og:url değerini canonical URL ile aynı yapın.
› E-E-A-T & Güven 11 geçti · 3 uyarı · 0 hata — skor 94
Deneyim, uzmanlık, otorite ve güven sinyalleri.
Nasıl düzeltirim?
Neden önemli: Yazarsız içerik, özellikle uzmanlık gerektiren konularda anonim ve güvensiz görünür.
Çözüm: Makalelere görünür yazar adı ekleyin; yazar adını author şemasıyla da işaretleyin.
ayrıntılar · 2 öğe
Nasıl düzeltirim?
Neden önemli: Kaynaksız iddialar doğrulanamaz; güven ve otorite sinyali zayıflar.
Çözüm: İstatistik ve iddialar için güvenilir kaynaklara bağlantı verin.
ayrıntılar · 1 öğe
Nasıl düzeltirim?
Neden önemli: Kullanım koşulları, hizmetin kurallarını netleştirir; ticari sitelerde beklenir.
Çözüm: Kullanım koşulları sayfası ekleyip altbilgiden bağlayın.
› URL Yapısı 14 geçti · 0 uyarı · 0 hata — skor 100
URL'lerin SEO dostu yapısı.
› Mobil Uyumluluk 4 geçti · 1 uyarı · 0 hata — skor 94
Mobil cihaz uyumluluğu ve kullanılabilirlik.
ayrıntılar · 8 öğe
| Öğe | Tür | Evidence |
|---|---|---|
| div.preview-overlay | Popup/Modal overlay | overlay |
| div.preview-overlay | Popup/Modal overlay | overlay |
| div.preview-overlay | Popup/Modal overlay | overlay |
| div.preview-overlay | Popup/Modal overlay | overlay |
| div.hero-overlay | Popup/Modal overlay | overlay |
| div.instagram-overlay | Popup/Modal overlay | overlay |
| div.instagram-overlay | Popup/Modal overlay | overlay |
Nasıl düzeltirim?
Neden önemli: Ekranı kaplayan pop-up'lar mobilde içeriğe erişimi engeller; Google bunun için ceza uygular.
Çözüm: İçeriği örten geçiş reklamlarını kaldırın; küçük banner ya da yasal zorunlu bildirimlerle sınırlayın.
› Uluslararasılaştırma 10 geçti · 0 uyarı · 0 hata — skor 100
Çok dillilik ve hreflang yapılandırması.
› Yasal Uyum 0 geçti · 1 uyarı · 0 hata — skor 50
Çerez onayı ve yasal gereklilikler.
ayrıntılar · 1 öğe
- Tracking scripts detected but no cookie consent mechanism found
Nasıl düzeltirim?
Neden önemli: Çerez kullanan sitelerde onay mekanizması KVKK/GDPR yükümlülüğüdür.
Çözüm: Zorunlu olmayan çerezleri onaydan önce çalıştırmayan bir çerez onay çözümü ekleyin.
› JavaScript Render 12 geçti · 0 uyarı · 1 hata — skor 100
JavaScript sonrası render edilen içeriğin SEO uyumu.
Nasıl düzeltirim?
Neden önemli: JS ile eklenen canonical güvenilir işlenmez; Google ilk HTML'dekini tercih eder.
Çözüm: Canonical etiketini sunucu tarafında ilk HTML'e ekleyin.
› Yönlendirmeler 8 geçti · 0 uyarı · 0 hata — skor 100
Yönlendirme zincirleri ve türleri.
› HTML Doğrulama 9 geçti · 0 uyarı · 0 hata — skor 100
HTML belgesinin yapısal geçerliliği.
› AI / GEO Hazırlığı 2 geçti · 3 uyarı · 0 hata — skor 79
Yapay zeka arama motorlarına ve üretken aramaya hazırlık.
ayrıntılar · 11 öğe
- section
- nav
- footer
- main
- article
- header
Nasıl düzeltirim?
Neden önemli: Semantik HTML (article, section, nav…) AI sistemlerinin ve arama motorlarının içeriği doğru parçalamasını sağlar.
Çözüm: div yığını yerine anlamlı öğeler kullanın: <main>, <article>, <section>, <nav>, <header>, <footer>.
ayrıntılar · 10 öğe
- hierarchical headings
- paragraph content
- structured data (lists/tables)
- main content area (<main>, <article>, or [role="main"])
- 1
- 2
- 3
- 5
Nasıl düzeltirim?
Neden önemli: Başlıklar, listeler ve tablolar AI aramalarının içeriğinizden alıntı yapabilmesini kolaylaştırır.
Çözüm: İçeriği başlık hiyerarşisi, madde listeleri (<ul>/<ol>) ve uygun yerde tablolarla yapılandırın.
ayrıntılar · 1 öğe
Nasıl düzeltirim?
Neden önemli: llms.txt, sitenizi AI sistemlerine tanıtan yeni bir standarttır; erken benimseyenler avantajlıdır.
Çözüm: Kök dizine sitenizi ve önemli sayfalarınızı özetleyen bir /llms.txt dosyası ekleyin (bkz. llmstxt.org).