Mixed bençerik

ne mixed bençerik dır, neden active mixed bençerik alır blocked -iken passive alır warned hakkında, ve nasıl -e detect ve düzelt insecure sub-kaynaklar ölçekte — browser console, CSP reporting, upgrade-insecure-istekler, block-tümü-mixed-bençerik, ve nasıl CMSes ve ad tech reintroduce o.

İlk yayın tarihi: 3 Tem 2026 · Son güncelleme: 8 Ağu 2026 · Advanced
Diller

Mixed bençerik dır bir HTTPS sayfa loading bir sub-kaynak üzerinde HTTP. Browsers' güncel taxonomy dır upgradable versus blockable; older active/passive split hâlâ tracks şu bençin en çok types, ile exceptions (CORS-enabled images, srcset/picture, ve IP-ana makine istekler dır blockable, değil upgradable). Active mixed bençerik — scripts, stylesheets, iframes, XMLHttpRequest/fetch — dır blocked outright çünkü bir tampered script -ebilir rewrite whole sayfa, bu nedenle o's ne aslında breaks bir site sonra bir HTTP→HTTPS migration; düzelt o ilk. Passive mixed bençerik — images, audio, video — historically loaded ile bir downgraded padlock ve dır now increasingly auto-upgraded veya blocked de. Anchor bağlantılar ve diğer top-level HTTP navigation değildir mixed bençerik, ve neither dır insecure downloads (bir related, separate boundary). bul o genelinde fetched kaynak, rendered/runtime state, ve gerçek-kullanıcı sessions: tarama HTTPS site, watch Chrome DevTools console (exact wording dır browser/sürüm specific), veya collect bençerik-Security-politika-rapor-yalnızca violations; düzelt o tarafından ilk confirming HTTPS eşdeğeri aslında çalışır, o hâlde pointing her sub-kaynak at https:// (relative/protokol-relative paths yalnızca sonra verifying ownership ve base-URL behavior). bençerik-Security-politika: upgrade-insecure-istekler header rewrites in-scope http:// sub-kaynak istekler — dahil cross-origin ones — -e https:// önce onlar're sent ve önce mixed-bençerik/CSP kontroller çalıştır; o sahiptir no HTTP fallback eğer upgrade fails, o's bir safety net yerine bir substitute bençin cleaning kaynak, o yapmaz upgrade top-level navigation -e üçüncü-party origins (bu nedenle o değildir bir replacement bençin HSTS), ve ayarlama directive itself in rapor-yalnızca mode dır bir no-op — izle ile bir separate rapor-yalnızca politika instead. CMS databases (back up ve dry-çalıştır replacements — naive string-replace -ebilir corrupt serialized data), plugins/themes, service workers/caches, ve ad/analytics tags dır usual re-offenders; denetim ölçekte ile bir crawler ve CSP reporting yerine sayfa tarafından sayfa.

TL;DR — Mixed bençerik dır bir HTTPS sayfa loading bir sub-kaynak üzerinde HTTP. güncel browser/W3C taxonomy sorts bu -e upgradable ve blockable bençerik; older active/passive split (kullanılan below olarak bir blast-radius framing) hâlâ tracks şu divide bençin en çok kaynak types, ile exceptions — CORS-enabled images, srcset/picture candidates, ve IP-ana makine istekler dır blockable hatta gerçben bir plain img src dır upgradable. Active (scripts, stylesheets, iframes, XMLHttpRequest/fetch, ve anything browser executes) dır blocked — bir tampered script -ebilir rewrite sayfa — bu nedenle o’s launch-day regression -e düzelt ilk. Passive (images, audio, video) historically loaded ile bir downgraded indicator ve dır now increasingly auto-upgraded veya blocked. Anchor bağlantılar ve diğer top-level HTTP navigation değildir mixed bençerik; neither dır insecure downloads, hangi dır bir related ama separate boundary. Detect o genelinde three layers — fetched kaynak, rendered/runtime state, ve gerçek kullanıcı sessions — tarafından tarama HTTPS site, okuma Chrome DevTools console (exact wording dır browser/sürüm specific), veya collecting Content-Security-Policy-Report-Only violations; düzelt o tarafından confirming bir HTTPS eşdeğeri aslında çalışır, o hâlde pointing her sub-kaynak at https:// (relative/protokol-relative paths dır fine once siz’ve verified ownership ve base-URL behavior, değil bir universal default). Content-Security-Policy: upgrade-insecure-requests rewrites in-scope http:// sub-kaynak istekler (dahil cross-origin ones) -e https:// önce onlar’re sent ve önce mixed-bençerik/CSP kontroller çalıştır — bir net, değil bir substitute bençin düzeltme kaynak, ile no HTTP fallback eğer upgrade fails, ve o yapar değil upgrade top-level navigation -e üçüncü-party origins, bu nedenle o yapmaz replace HSTS. Putting directive itself in rapor-yalnızca mode dır bir no-op — izle ile bir separate rapor-yalnızca politika instead. CMS databases (back up ve dry-çalıştır herhangi bir replacement — naive string-replace -ebilir corrupt serialized data), plugins, themes, service workers/caches, ve ad/analytics tags dır recurring re-offenders — denetim at scale, değil sayfa tarafından sayfa.

HTTPS hub introduces mixed bençerik olarak bir of two launch-day başarısızlık modes of bir migration ( diğer olma yönlendirmeler). bu deep dive o benşaret eder -e — exact kaynak tiers, detection stack, CSP directives, ve operational nedenler o keeps coming back.

ne counts olarak mixed bençerik — ve ne yapmaz

Mixed bençerik dır scoped precisely: o’s hakkında sub-kaynaklar sayfa loads, değil hakkında bağlantılar sayfa contains. Google’s definition: “bir sayfa sahiptir mixed bençerik ne zaman onun initial HTML dır loaded üzerinde bir secure HTTPS connection, ama diğer kaynaklar (such olarak images, videos, stylesheets, ve scripts) dır loaded üzerinde bir insecure HTTP connection.” Evidence for this claim Mixed content occurs when a secure page loads resources over insecure HTTP, and browsers upgrade or block mixed-content requests by resource type. Scope: MDN documents current browser categories and behavior; individual browser versions may differ at the margins. Confidence: high · Verified: MDN: Mixed content

trap şu reassures kişiler falsely dır anchor tag. bir <a href="http://…"> bağlantı -e bir HTTP sayfa dır değil mixed bençerik — o navigates -e bir yeni belge; o yapmaz load bir insecure kaynak -e güncel secure bir. şu’s true of herhangi bir top-level navigation -e bir HTTP sayfa, değil sadece anchor tıklamalar.

o’s hâlâ worth sending outbound bağlantılar -e HTTPS destinations. altında modern browser-default Referrer-Policy (strict-origin-when-cross-origin), bir click -den bir HTTPS sayfa -e bir HTTP destination yapar drop Referer header, hangi -ebilir mangle referral analytics — ama şu behavior dır politika- ve browser-dependent, değil bir universal kural: bir sayfa (veya bir upstream proxy/CDN) şu sets bir looser Referrer-Policy -ebilir hâlâ send bir referrer on şu downgrade. kontrol et gerçek Referrer-Policy in effect önce asserting nasıl much referral data bir given site loses — ama in herhangi bir durum, şu’s bir separate sorun -den mixed bençerik, değil mixed bençerik itself.

Active vs. passive: distinction şu sets sizin priorities

Modern browser ve W3C dokümantasyon classifies mixed bençerik primarily olarak upgradable versus blockable bençerik — kaynak types browser -ecek silently retry üzerinde HTTPS versus ones o refuses outright — yerine older active/passive split. Active/passive dır hâlâ yararlı shorthand bençin neden browsers draw şu line (nasıl much of sayfa kaynak -ebilirdi compromise), ve o’s nasıl Google’ın kendi explainer frames o, bu nedenle o’s kept below olarak birincil triage framing — sadece yapmayın ele al o olarak güncel resmî taxonomy ne zaman -meniz gerekir neden hakkında bir specific kaynak type; see exceptions sonra two listeler.

Browsers classify mixed bençerik tarafından nasıl much of sayfa insecure kaynak -ebilirdi compromise. Google: “Active mixed bençerik poses bir greater threat -den passive mixed bençerik.” şu tek sentence -meli drive sizin triage sıra.

Active mixed bençerik interacts ile — ve -ebilir take üzerinde — whole sayfa. Google describes o olarak “scripts, stylesheets, iframes, ve herhangi bir diğer code browser -ebilir download ve execute.” uygulamada active liste dır:

  • <script src="http://…"> — worst durum; bir intercepted script -ebilir rewrite entire DOM, exfiltrate form data, veya inject bençerik.
  • <link rel="stylesheet" href="http://…"> — CSS -ebilir hide, reposition, veya overlay anything, bu nedenle o’s ele alınır olarak active.
  • <iframe src="http://…"> — bir embedded insecure belge bençinde sizin secure bir.
  • XMLHttpRequest / fetch() -e http:// — insecure data sayfa o hâlde acts on.
  • Web fonts, <object>/<embed> kaynaklar, ve <link> varyantlar şu pull in executable veya layout-controlling bençerik.

çünkü bir tampered active kaynak -ebilir rewrite sayfa, “en çok browsers zaten block bu type of bençerik tarafından default -e protect kullanıcılar.” şu’s neden active mixed bençerik dır ne visibly breaks things sonra bir migration — bir blocked stylesheet strips sizin CSS, bir blocked script kills interactivity, bir blocked iframe leaves bir hole. düzelt active ilk. o’s bir functional bug, değil sadece bir security nag.

Passive (display) mixed bençerik — Google: “including images, video, and audio”“doesn’t interact with the rest of the page.” bir intercepted image -ebilir olmak swapped ama -ebilir’t seize belge. bu nedenle historically browsers loaded o ve sadece downgraded indicator: “Until recently, passive mixed bençerik idi loaded in tümü browsers, çünkü blocking o -irdi sahip broken çok söyleıda web siteleri. bu now beginning -e change.” direction of travel genelinde browsers dır toward auto-upgrading passive kaynaklar -e HTTPS nerede olası ve blocking ne -ebilir’t olmak upgraded, bu nedenle “passive = harmless” dır no longer bir safe assumption -e oluştur on.

Exceptions active/passive split yapmaz capture

upgradable/blockable line sahiptir several exceptions şu yapmayın izle general “images upgrade, scripts block” pattern above — bunlar dır durumlar şu aslında trip kişiler up uygulamada:

  • CORS-enabled image istekler dır force-failed, değil upgraded. bir ordinary <img src="http://…"> dır upgradable, ama bir image istek yapılmış ile crossorigin ayarla dır ele alınır differently tarafından mixed-bençerik algorithm ve fails yerine silently upgrading.
  • srcset ve <picture> candidates dır blockable, değil upgradable. aynı image, requested aracılığıyla bir responsive-image mechanism yerine bir plain src, falls -e blockable category — yapmayın assume her image reference behaves aynı way.
  • IP-adres hosts dır blocked, değil upgraded, hatta bençin bir otherwise-upgradable kaynak type. bir reference like http://203.0.113.5/logo.png yapmaz al automatic-upgrade treatment bir domain-hosted eşdeğeri -irdi.
  • Nested contexts ve workers dır in scope. Mixed-bençerik kontroller uygula bençinde iframes ve bençinde service/shared workers de, değil sadece top belge — bir worker fetching bir insecure script dır hâlâ mixed bençerik.
  • Local ve loopback origins sahip onların kendi nuance. localhost, loopback adresler, ve file:// contexts dır “potentially trustworthy origins” altında spec hatta olmadan TLS, bu nedenle bir simple HTTP-vs-HTTPS heuristic yapmaz map cleanly üzerine local development environments.
  • Insecure downloads dır bir related ama separate boundary. bir download initiated -den bir secure sayfa üzerinde http:// dır bir gerçek risk, ama o’s governed tarafından onun kendi download-security handling, değil sub-kaynak mixed-bençerik kurallar in bu section.
  • Top-level HTTP navigation hâlâ değildir mixed bençerik, dahil anchor-bağlantı durum above — şu’s bir property of navigation, değil of bir loaded sub-kaynak, ancak çok söyleıda of bunlar diğer exceptions uygula.

Detecting mixed bençerik — whole stack

yoktur tek button, ve her layer below yanıtlar bir farklı soru — bir temiz sonuç at bir layer yapmaz clear others. Diagnose fetched kaynak (ne raw HTML aslında references), rendered/runtime state (ne browser istekler once o’s parsed sayfa ve çalıştır onun scripts), ve gerçek kullanıcı sessions (ne olur bençin bir ziyaretçben behind bir consent banner, bir geo-yönlendirme, bir login wall, veya bir üçüncü-party tag şu yalnızca fires altında specific conditions) separately. Layer bunlar -den “one page” -e “whole site”:

  1. ** Chrome DevTools console** (rendered/runtime state). Load HTTPS sayfa ve open console. Blocked active mixed bençerik logs bir message along lines of “Mixed bençerik: sayfa … idi loaded üzerinde HTTPS, ama requested bir insecure … bu istek sahiptir olmuş blocked; bençerik -meli olmak sunulan üzerinde HTTPS.” Passive şu alır loaded logs bir warning yerine bir block. Security panel (veya sorunlar tab) gruplar o up per sayfa. Fast bençin spot-kontroller ve bençin confirming bir specific düzelt — ama ele al exact message wording, panel layout, ve hatta hangi kaynak types al blocked olarak browser- ve sürüm-specific; bu idi yapğrulanmış karşı Chrome olarak of 2026-07 ve yapmalısınız verify güncel wording on gerçek browser/sürüm siz’re diagnosing yerine quoting o olarak bir düzeltilmiş UI string, ve expect Firefox, Safari, ve Edge -e differ.

  2. bir site crawler (fetched kaynak, ölçekte). DevTools dır per-sayfa; bir tarama dır site-wide. Ahrefs site denetimi ve Screaming Frog her ikisi flag sayfalar şu reference http:// sub-kaynaklar on bir HTTPS site — yalnızca realistic way -e bul mixed bençerik genelinde thousands of URLs. bu birincil araç bençin bir denetim, ama o’s hâlâ okuma kaynak: bir tarama passing temiz yapmaz prove rendered sayfa veya bir gerçek session dır temiz de — record hangi browser/araç/sürüm produced bir given sonuç yerine reporting bir unqualified geç/başarısız ol.

  3. CSP violation reporting (gerçek kullanıcı sessions). -ebilirsiniz yap browsers of gerçek visitors rapor mixed bençerik back -e siz, hangi catches kaynaklar şu yalnızca load on certain sayfalar, bençin certain kullanıcılar, altında certain consent states, veya -den üçüncü-party tags siz yapmayın control — layer neither bir tarama nor bir tek DevTools kontrol et -ebilir ulaş. web.dev: “-ebilirsiniz kullan bençerik security politika -e collect raporlar of mixed bençerik on sizin site. -e enable bu feature, ayarla Content-Security-Policy-Report-Only directive tarafından adding o olarak bir response header bençin sizin site.” rapor-yalnızca mode raporlar violations olmadan enforcing politika, bu nedenle -ebilirsiniz measure sorun in production önce siz turn on blocking. ( mechanism dır modern report-to / Reporting-Endpoints header, veya older report-uri. Note bu bir farklı, general-purpose rapor-yalnızca politika -den upgrade-insecure-requests itself — putting şu specific directive in rapor-yalnızca mode yapmaz çalışır, olarak covered below.)

Evidence for this claim upgrade-insecure-requests in a Content-Security-Policy-Report-Only header is ignored. Scope: Content Security Policy upgrade-insecure-requests processing Confidence: high · Verified: Upgrade Insecure Requests

kullan tümü three: DevTools -e verify bir rendered sayfa, bir crawler -e inventory fetched kaynak, CSP raporlar -e catch gerçek-session uzun tail şu yalnızca shows up in wild. bir tarama passing dır evidence hakkında kaynak, değil bir guarantee şu her consent state, ad-tech varyant, personalization branch, veya worker dır temiz.

düzeltme at kaynak

gerçek düzelt starts önce siz touch bir tek reference: verify HTTPS eşdeğeri aslında vardır, presents bir valid certificate, ve döndürür bençerik siz expect — yapmayın assume swapping scheme dır safe sadece çünkü domain resolves. Once şu’s yapğrulanmış, her sub-kaynak reference -meli resolve üzerinde HTTPS. Options below dır in rough sıra of preference, ama her bir hâlâ depends on ownership ve context, değil sadece string siz type:

  • Absolute HTTPS URLs — change http://cdn.example.com/app.js -e https://cdn.example.com/app.js. Explicit ve unambiguous; safest default ne zaman siz’re değil certain hakkında sunma context below.
  • Root-relative veya relative paths — bençin kaynaklar siz kendi on aynı site, /assets/app.js inherits sayfa’s scheme automatically. Google’s HTTPS rehberlik: “emin olun intrasite URLs ve external URLs yapmayın depend on bir specific protokol. kullan relative paths veya leave out protokol olarak in //example.com/something.js.” ele al bu olarak conditional, değil bir universal recommendation: o yalnızca holds once siz’ve yapğrulanmış siz aslında kendi kaynak (bir relative path -e bir üçüncü-party asset yapmaz yap sense), şu sayfa’s gerçek base URL resolves way siz expect (bir <base> tag, bir proxied path, veya bir embedded/AMP context -ebilir change ne “relative” anlamına gelir), ve şu nothing downstream reconstructs URL in bir way şu reintroduces http:// — client-side code building bir URL -den window.location veya bir stored absolute değer, örneğin.
  • protokol-relative URLs (//example.com/something.js) hâlâ çalışır, ama onlar’re değil tercih edilen universal düzelt — gate them on aynı ownership/base-URL kontroller above, değil sadece habit. On bir tümü-HTTPS web, bir explicit https:// dır genellikle clearer ve avoids surprises eğer file dır ever opened -den bir non-HTTP context; ulaş bençin protokol-relative yalnızca nerede siz sahip bir specific neden değil -e hard-code scheme.

ölçekte siz almost never hand-edit templates bir tarafından bir — ama yapmayın çalıştır bir unguarded database string-replacement karşı production either. http://yourdomainhttps://yourdomain görünür like bir simple bul-ve-replace, ve bençin plain-text fields o çoğu zaman dır safe, ama CMS bençerik -ebilir olmak serialized veya structured (PHP serialized arrays, JSON blobs, block-editor data) nerede bir naive substring swap corrupts record yerine düzeltme o. kullan application-aware tooling şu understands serialization format, back up database ilk, ve dry-çalıştır replacement bu nedenle -ebilirsiniz review affected rows önce committing. o hâlde düzelt handful of template/config files şu emit URLs; crawler ve CSP raporlar mop up stragglers.

upgrade-insecure-requests: safety net (ve onun limits)

proactive backstop dır bir bençerik-Security-politika directive. web.dev: upgrade-insecure-requests CSP directive instructs browser -e upgrade insecure URLs önce making network istekler.” ayarla header:

Content-Security-Policy: upgrade-insecure-requests

Per MDN, o “instructs kullanıcı agents -e ele al tümü of bir site’s insecure URLs (şunlar sunulan üzerinde HTTP) olarak gerçben onlar sahip olmuş replaced ile secure URLs (şunlar sunulan üzerinde HTTPS).” Concretely, MDN says it upgrades: “istekler -e load kaynaklar (such olarak images, scripts, veya fonts),” “navigation istekler (such olarak bağlantı targets) hangi dır aynı-origin ile belge,” “navigation istekler in nested browsing contexts, such olarak iframes,” and “form submissions.” Evidence for this claim The upgrade-insecure-requests CSP directive rewrites insecure URLs as secure URLs before requests are made. Scope: MDN documents the directive's rewriting behavior and limits; it does not guarantee that an HTTPS version of every resource exists. Confidence: high · Verified: MDN: CSP upgrade-insecure-requests

Two operational details önem taşır beyond şu quote. ilk, sub-kaynak upgrade değildir limited -e aynı-origin istekler — o’s navigation upgrade şu’s aynı-origin-yalnızca per quote above; ordinary sub-kaynak istekler al rewritten genelinde origins de, bu nedenle bir CDN-hosted script veya bir üçüncü-party font alır upgraded, değil sadece aynı-site assets. ikinci, rewrite olur önce browser’s mixed-bençerik ve CSP kontroller evaluate istek, bu da neden bir kaynak şu -irdi otherwise olmak blocked outright olarak mixed bençerik -ebilir load cleanly once o’s olmuş upgraded — upgrade pre-empts block.

Three limits siz -meli değil paper üzerinde:

  • o yapmaz upgrade üçüncü-party top-level navigation. MDN: “ancak, top-level navigation istekler whose target dır bir farklı origin -ecek değil olmak upgraded.” çünkü of şu, o dır explicitly değil bir replacement bençin HSTS: upgrade-insecure-requests directive -ecek değil ensure şu kullanıcılar visiting sizin site via bağlantılar on üçüncü-party siteler -ecek olmak upgraded -e HTTPS bençin top-level navigation ve thus yapmaz replace Strict-Transport-Security (HSTS) header.” (daha on şu split below.)
  • o’s bir net, değil bir düzelt, ve o yapmaz fall back. eğer kaynak genuinely değildir mevcut üzerinde HTTPS, upgraded istek sadece fails outright — o yapar değil fall back -e özgün http:// sürüm. Cleaning kaynak dır hâlâ job; directive kapsar ne siz missed, değil ne’s genuinely broken.
  • rapor-yalnızca mode yapmaz perform upgrade — o’s bir no-op. Putting upgrade-insecure-requests bençinde bir Content-Security-Policy-Report-Only header dır ignored tarafından browser: nothing alır rewritten, ve nothing alır reported bençin o either. -erseniz iste görünürlük -e ne upgrade -irdi affect önce siz enforce o, çalıştır bir separate, general-purpose rapor-yalnızca politika şu raporlar disallowed http:// destinations ( aynı default-src https: rapor-yalnızca approach kullanılan bençin detection above) — -ebilirsiniz’t al şu görünürlük tarafından making upgrade-insecure-requests itself rapor-yalnızca.

block-all-mixed-content — çoğunlukla geçmişe ait

orada’s bir companion directive, block-all-mixed-content, hangi — per MDN — “prevents loading any assets over HTTP when the page uses HTTPS,” dahil “her ikisi blockable ve upgradable mixed bençerik,” ve uygulanır -e iframes de. uygulamada o’s olmuş superseded. MDN marks o deprecated ve “obsolete in the specification,” noting: “bençerik şu değildir blocked dır now her zaman upgraded -e bir secure connection, bu nedenle bu directive değildir gerekli.” ulaş bençin upgrade-insecure-requests; ele al block-all-mixed-content olarak legacy siz -ebilir inherit, değil something -e deploy yeni. -erseniz zaten send upgrade-insecure-requests, block-all-mixed-content sahiptir nothing left -e yap bençin upgraded istekler — upgrade rewrite olur ilk, bu nedenle tarafından time bir block-tümü kontrol et -irdi çalıştır, istek sahiptir zaten olmuş upgraded (veya sahiptir zaten failed). o’s değil sadece legacy; o’s redundant wherever UIR dır zaten deployed.

Evidence for this claim block-all-mixed-content is deprecated and obsolete for new deployment. Scope: legacy CSP directives Confidence: high · Verified: CSP: block-all-mixed-content

neden sizin CMS keeps reintroducing o

Mixed bençerik değildir bir bir-time cleanup — o recurs, çünkü several systems quietly re-inject http:// URLs sonra siz think siz’re done:

  • ** bençerik database.** In WordPress, Drupal, ve en çok CMSes, editors paste images ve embeds ile absolute http:// URLs straight -e post bodies. şunlar live in database, değil in bir template, bu nedenle bir code-level düzelt never touches them — hence DB arama-ve-replace.
  • Themes ve plugins. bir theme veya plugin şu hard-codes bir http:// asset URL (bir font, bir script, bir background image) reintroduces mixed bençerik on her sayfa o renders, ve bir plugin update -ebilir bring o back sonra siz’ve cleaned o.
  • Ad tech, analytics, ve üçüncü-party tags. Tag managers, ad networks, chat widgets, ve analytics snippets load onların kendi sub-kaynaklar — ve eğer bir vendor’s tag hâlâ çbirğrılar http://, o’s mixed bençerik -ebilirsiniz’t düzelt in sizin kendi codebase. bu tam olarak uzun tail CSP reporting dır bençin; durable düzelt dır pressing vendor -e sun üzerinde HTTPS (veya dropping tag). eğer bir vendor sahiptir no working HTTPS endpoint, durable choices dır aynı three: al them -e düzelt o, replace dependency, veya drop o — orada değildir bir fourth option şu keeps insecure sürüm çalışbir safely.
  • Service workers ve caches. bir service worker -ebilir cache bir response (veya istek itself) şu hâlâ benşaret eder at http://, ve o’ll koru sunma şu stale reference on repeat visits hatta sonra siz düzelt kaynak. Reproduce bir suspected düzelt in bir incognito/uncached session önce concluding o didn’t çalışır, ve yap sure bir deploy şu changes kaynak URLs ayrıca bumps service worker/cache sürüm bu nedenle stale entries al evicted yerine replayed.
  • Hard-coded http:// in eski bençerik ve email/print templates şu al reused.

operational takeaway: bake detection -e bir recurring denetim (crawler + CSP raporlar), değil bir launch-day checklist siz çalıştır once.

nasıl mixed bençerik interacts ile HSTS

Mixed bençerik ve HSTS solve adjacent ama farklı problems, ve conflating them dır bir yaygın mistake:

  • upgrade-insecure-requests düzeltmeler sub-kaynaklar sizin kendi secure sayfa istekler — o upgrades images/scripts/iframes sayfa pulls in.
  • HSTS (Strict-Transport-Security) forces * top-level navigation -e sizin site* üzerine HTTPS — hatta çok ilk istek, önce herhangi bir yönlendirme fires — ve defends karşı SSL-stripping. Google frames HSTS olarak bir way -e “kaçın maliyet of 301 yönlendirme” and to “defeat attacks like SSL Stripping.”

onlar yapmayın substitute her biri bençin diğer. olarak MDN spells out, upgrade-insecure-requests “-ecek değil ensure şu kullanıcılar visiting sizin site via bağlantılar on üçüncü-party siteler -ecek olmak upgraded -e HTTPS bençin top-level navigation ve thus yapmaz replace Strict-Transport-Security (HSTS) header.” bir fully hardened setup kullanır her ikisi: upgrade-insecure-requests (veya temiz kaynak URLs) bu nedenle secure sayfa sahiptir no insecure cargo, ve HSTS bu nedenle nobody reaches site üzerinde HTTP in ilk place. ve usual HSTS caution hâlâ uygulanır — Google: “yapmayın enable HSTS until siz’re certain sizin site operation dır robust enough -e kaçın ever deploying HTTPS ile certificate validation errors,” ve preloading dır close -e bir bir-way door.

yapar mixed bençerik hurt SEO yapğrudan?

Lead ile direct effects, çünkü onlar’re ones siz aslında control: mixed bençerik dır ilk bir security ve functional sorun. Blocked active mixed bençerik breaks rendering ve interactivity outright — bir missing stylesheet veya script dır bir gerçek regression regardless of ne bir arama motoru yapar of o. şu’s neden enough -e düzelt o önce siz think hakkında sıralamalar at tümü.

SEO consequences dır gerçek ama conditional, değil direct veya guaranteed. güncel resmî Google rehberlik yapmaz establish düzeltme mixed bençerik olarak bir direct sıralama boost — HTTPS sıralama sinyal itself dır scheme-based (whether URL starts ile https://), değil bir sub-kaynak cleanliness kontrol et, bu nedenle bir stray insecure image yapmaz tarafından itself maliyet siz “the HTTPS signal.” ama downstream effects -ebilir hâlâ göster up depending on ne’s aslında broken: eğer Googlebot renders bir sayfa whose CSS veya JS idi blocked olarak mixed bençerik, o -ebilir dizin bir broken veya incomplete sürüm; bir downgraded security indicator -ebilir hurt kullanıcı trust, etkileşim, ve conversions hatta ile no sıralama change at tümü; ve Google’s general preference bençin HTTPS canonicals dır itself conditional — invalid certificates, insecure dependencies, HTTPS—e-HTTP yönlendirmeler, veya conflicting canonical sinyaller elsewhere on sayfa -ebilir tümü change hangi URL alır seçilen, independent of mixed bençerik specifically. ele al rendering, dizine ekleme, canonical’laştırma, ve analytics effects olarak things -e verify on sizin kendi sayfalar, değil universal outcomes -e promise — ve düzelt mixed bençerik bençin security ve functional nedenler ilk.

bu sits bençinde broader HTTPS bençin SEO topic, hangi kapsar migration playbook, sıralama-sinyal weight, ve HSTS in full; -erseniz’re ayrıca debugging certificate itself (chain errors, expiry, DV/OV/EV), şu’s bir sibling deep dive.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.