Skip to content
Smarter by Design.Simpler for Business

Modify Response Content ​

Modify Response Content Aksiyonu Nedir? ​

Modify Response Content aksiyonu, Kurum Servislerinden dönen HTTP yanıtlarının içeriğini gerçek zamanlı olarak değiştirmeye olanak tanır. Bu aksiyon ile hassas veriler maskelenebilir, HTML içeriğine kod eklenebilir veya belirli metinler başka metinlerle değiştirilebilir.

Bu aksiyon yalnızca yanıt (response) aşamasında çalışır ve yanıt gövdesindeki (body) içeriği işler.

Modify Response Content Aksiyonunun Önemi ​

Yanıt içeriğini değiştirme yeteneği, güvenlik, uyumluluk ve işlevsellik açısından kritik senaryolarda kullanılır. Bu aksiyon sayesinde Kurum Servisinde manuel bir değişiklik yapmadan yanıt içeriği manipüle edilebilir.

Modify Response Content aksiyonu;

  • KVKK/GDPR Uyumluluğu: Yanıtlardaki TC kimlik numarası, kredi kartı gibi hassas verileri maskeler,
  • Güvenlik: Hassas bilgilerin istemciye ulaşmasını engeller,
  • HTTP→HTTPS Dönüşümü: HTML içindeki linkleri otomatik olarak HTTPS'e çevirir,
  • Analytics Entegrasyonu: Sayfalara JavaScript tracking kodları ekler,
  • A/B Testing: Sayfa içeriklerini dinamik olarak değiştirir,
  • Legacy Uygulama Desteği: Eski uygulamaların çıktılarını modernize eder.

Bu nedenle Modify Response Content aksiyonu, uygulama katmanında içerik manipülasyonu için güçlü bir araçtır.

Desteklenen Değişiklik Türleri ​

Bu aksiyon üç farklı değişiklik modu sunar:

Mask
Eşleşen metinleri maskeler (uzunluk değişmez). TC/kredi kartı/telefon gizleme.
Add HTML Code
HTML etiketlerine kod ekler. Script enjeksiyonu, analytics, meta tag.
Replace
Eşleşen metinleri başka metinlerle değiştirir. URL düzeltme, içerik güncelleme.
TürAçıklamaKullanım Alanı
MaskEşleşen metinleri maskeler (uzunluk değişmez)TC kimlik, kredi kartı, telefon numarası gizleme
Add HTML CodeHTML etiketlerine kod eklerScript enjeksiyonu, analytics, meta tag ekleme
ReplaceEşleşen metinleri başka metinlerle değiştirirURL düzeltme, metin değiştirme, içerik güncelleme

TIP

  • Mask: Orijinal metnin uzunluğunu korur (ör: 12345678901 → 1*********1). Veri formatını bozmadan gizleme yapar.
  • Replace: Metnin uzunluğu değişebilir (ör: http:// → https://). Tam değiştirme yapar.

Kullanılabildiği vService Tipleri ​

HTTP
L7 TCP
Network

Çalışma Anı ​

İstek Anı (On Request)
Cevap Anı (On Response)

Nasıl Eklenir? ​

Yeni bir Modify Response Content Aksiyonu, TR7 web yönetim arayüzü üzerinden aşağıdaki adımlar izlenerek eklenebilir:

  1. Sol altta bulunan TR7 logosuna tıklanarak Configuration Menu açılır.
  2. Load Balancer → Actions → Add adımları takip edilir.
  3. Aksiyon için benzersiz ve açıklayıcı bir isim girilir.
  4. Action Type olarak Modify Response Content seçilir.
  5. Aksiyona ait ilgili konfigürasyonlar yapılandırılır.
  6. Conditions sekmesinden aksiyonun hangi koşul/koşullarda devreye gireceği belirlenir.
  7. Add butonuna tıklanarak aksiyon eklenir.

Mask Modu Ekleme Formu ​

Mask Modu için Aksiyon Ekleme FormuMask Modu için Aksiyon Ekleme Formu

INFO

Action Name ​

Oluşturulacak olan aksiyona benzersiz ve açıklayıcı bir isim girilir.

INFO

Action Type ​

Aksiyon tipi olarak Modify Response Content seçilir.

INFO

Modify Type ​

Değişiklik türü olarak Mask seçilir. Bu mod, eşleşen metinleri belirtilen karakterle maskeler ve orijinal uzunluğu korur.

INFO

Query Type Varsayılan: RegEx ​

Arama sorgusu türünü belirler:

  • String: Düz metin araması yapar. Girilen metin, yanıt içinde geçtiği her yerde eşleşir; tam eşleşme koşulu aranmaz ve arama harf duyarlıdır.
  • Regex: Düzenli ifade (regex) ile arama yapar. Desen eşleştirme için kullanılır.

TIP

TC kimlik numarası, kredi kartı gibi yapısal verilerin maskelenmesi için Regex kullanılır.

INFO

Built-in Mask Regexes ​

Sık kullanılan maskeleme desenleri için hazır regex'ler kullanılabilir. Tıklandığında ilgili regex otomatik olarak Mask query alanına eklenir:

  • TC ID. NO: Türkiye Cumhuriyeti kimlik numarası deseni (\b\d{11}\b)
  • Credit card: Kredi kartı numarası deseni

TC Kimlik Numarası Regex DeseniTC Kimlik Numarası Regex Deseni

Kredi Kartı Regex DeseniKredi Kartı Regex Deseni

INFO

Mask Query ​

Maskelenecek içeriği bulmak için kullanılacak arama sorgusu seçilir.

  • String modu için: tam olarak aranacak metin
  • Regex modu için: düzenli ifade deseni

Regex test özelliği: Sağdaki buton ile regex deseni test edilir. Test panelinde örnek girdiler eklenerek desenin doğru çalışıp çalışmadığı kontrol edilir.

TC Kimlik Regex Testi: 11 Haneli Sayılar EşleşirTC Kimlik Regex Testi: 11 Haneli Sayılar Eşleşir

Kredi Kartı Regex Testi: Farklı FormatlarKredi Kartı Regex Testi: Farklı Formatlar

INFO

Case Sensitive Varsayılan: Kapalı ​

Yalnızca RegEx modunda görünür ve aramanın büyük/küçük harf ayrımı yapıp yapmayacağını belirler.

  • İşaretli değilken (varsayılan): Arama harf duyarsızdır; TCKN ve tckn aynı kabul edilir.
  • İşaretliyken: Arama harf duyarlı yapılır.

WARNING

String aramalarında bu alan görünmez ve arama her zaman harf duyarlıdır. Ayrıca alanın yanındaki regex test panelinde denetim her zaman harf duyarlı yapılır; canlı davranış bu alanın durumuna göre farklılaşabilir.

INFO

Omitted Characters ​

Maskeleme sırasında korunacak (maskelenmeyecek) karakterler belirlenebilir. Bu karakterler orijinal halleriyle kalır.

TIP

  • Omitted characters: 1978
  • Girdi: 12345678901
  • Çıktı: 1*****789*1 (1, 7, 8, 9 karakterleri korunur)

Bu özellik, doğum yılı gibi belirli bilgilerin görünür kalması gereken durumlarda kullanılabilir.

INFO

Masking Character Zorunlu Varsayılan: * ​

Maskeleme için kullanılacak karakter bu alana girilir. Alan tek bir karakter kabul eder.

TIP

  • *: Standart maskeleme
  • X: Daha belirgin maskeleme
  • #: Sayısal veri maskeleme için

INFO

Masking Tolerance ​

Eşleşen metnin başından ve sonundan kaç karakterin maskelenmeyeceğini belirler.

TIP

  • Tolerance: 2
  • Girdi: 12345678901
  • Çıktı: 12*******01 (ilk 2 ve son 2 karakter korunur)

Bu özellik, verinin doğrulanabilirliğini korurken gizleme yapmak için kullanılır.

WARNING

Tolerans yalnızca eşleşme yeterince uzunsa uygulanır: eşleşmenin uzunluğu, tolerans değerinin iki katından fazla olmalıdır. Aksi hâlde tolerans dikkate alınmaz ve eşleşmenin tamamı maskelenir.

11 haneli bir değerde tolerans 5'e kadar çalışır (12345*12345). Tolerans 6 yapıldığında görünür kalması istenen kısım eşleşmenin tamamını kaplayacağı için sonuç *********** olur. Form bu durumda uyarı vermez.

INFO

Min. Occurrences for Masking ​

Maskelemenin kaçıncı eşleşmeden itibaren başlayacağı belirlenir. Yanıt gövdesindeki eşleşmeler sırayla sayılır; bu sıradan önceki eşleşmeler maskelenmeden istemciye gider.

TIP

  • Min. occurrences: 2
  • İçerik: "TC: 12345678901, Tel: 05551234567"
  • Sonuç: TC: 12345678901, Tel: 0*********7: ilk eşleşme olduğu gibi kalır, maskeleme ikinci eşleşmeden itibaren başlar.

İçerikte tek eşleşme olsaydı hiçbir şey maskelenmezdi.

WARNING

Varsayılan değer 1'dir; yani "birinci eşleşmeden itibaren maskele": bütün eşleşmeler maskelenir. Bu alan, adı çağrıştırdığı gibi "maskeleme için en az şu kadar eşleşme bulunsun" anlamına gelmez. Amaç bütün hassas verilerin örtülmesiyse alan 1'de bırakılmalıdır; artırılması, her yanıttaki ilk verinin açıkta kalması demektir.

INFO

Conditions ​

Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.

Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.

Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.

WARNING

Bu alanda herhangi bir koşul tanımlanmazsa, ilgili aksiyon koşulsuz (Always) olarak çalışır. Bu durumda aksiyon, ilgili vService'e gelen tüm trafiğe uygulanır.

Canlı ortamlarda, koşul tanımlanmadan aksiyon kullanılması beklenmeyen durumlara (servis kesintilerine) yol açabilir. Bu nedenle aksiyon oluşturulurken mutlaka en az bir koşul tanımlanması önerilir.

INFO

Form Butonları ​

Add ​

Add butonuna tıklanarak aksiyon ekleme işlemi tamamlanır.

Add & Repeat ​

Add & Repeat butonu ile aksiyon ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir aksiyon daha eklenebilir.

Aksiyon EklendiAksiyon Eklendi

Add HTML Code Modu Ekleme Formu ​

Add HTML Code Modu için Aksiyon Ekleme FormuAdd HTML Code Modu için Aksiyon Ekleme Formu

INFO

Modify Type ​

Değişiklik türü olarak Add HTML code seçilir. Bu mod, belirtilen HTML etiketinin içine kod enjekte eder.

INFO

HTML Tag ​

Kodun ekleneceği HTML etiketi seçilir.

EtiketAçıklama
<html></html>Ana HTML etiketi
<head></head>Sayfa başlık bölümü (meta, script, style için ideal)
<body></body>Sayfa gövdesi (görünür içerik için)
<title></title>Sayfa başlığı

INFO

Tag Modify Type ​

Kodun etiket içinde nereye ekleneceğini belirler:

  • Append: Etiketin açılışından hemen sonra ekler (<html> → <html>[KOD]...)
  • Prepend: Etiketin kapanışından hemen önce ekler (...</html> → ...[KOD]</html>)

TIP

  • Script'ler için: <head> + Append veya <body> + Prepend
  • Meta tag'ler için: <head> + Append

INFO

HTML Content to Add ​

Eklenecek HTML/JavaScript içeriği bu alana girilir. Herhangi bir geçerli HTML kodu girilebilir.

Varsayılan değer: HTTP→HTTPS link dönüştürme scripti

html
<script type="text/javascript" defer="defer">
    window.addEventListener("load", function() {
        var alinks = document.getElementsByTagName("a");
        var acount = alinks.length;

        for (var i=0; i < acount; i++) {
            alinks[i].href = alinks[i].href.replace("http://","https://");
        }
    })
</script>

WARNING

Eklenen kod, sayfa yüklenme süresini ve performansını etkileyebilir; küçültülmüş ve iyileştirilmiş kod kullanılır.

INFO

Conditions ​

Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.

Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.

Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.

WARNING

Bu alanda herhangi bir koşul tanımlanmazsa, ilgili aksiyon koşulsuz (Always) olarak çalışır. Bu durumda aksiyon, ilgili vService'e gelen tüm trafiğe uygulanır.

Canlı ortamlarda, koşul tanımlanmadan aksiyon kullanılması beklenmeyen durumlara (servis kesintilerine) yol açabilir. Bu nedenle aksiyon oluşturulurken mutlaka en az bir koşul tanımlanması önerilir.

INFO

Form Butonları ​

Add ​

Add butonuna tıklanarak aksiyon ekleme işlemi tamamlanır.

Add & Repeat ​

Add & Repeat butonu ile aksiyon ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir aksiyon daha eklenebilir.

Aksiyon EklendiAksiyon Eklendi

Replace Modu Ekleme Formu ​

Replace Modu için Aksiyon Ekleme FormuReplace Modu için Aksiyon Ekleme Formu

INFO

Modify Type ​

Değişiklik türü olarak Replace seçilir. Bu mod, eşleşen metinleri yeni içerikle değiştirir.

INFO

Query Type Varsayılan: RegEx ​

Arama sorgusu türünü belirler:

  • String: Düz metin araması
  • Regex: Düzenli ifade ile arama

INFO

Mask Query ​

Değiştirilecek içeriği bulmak için kullanılacak arama sorgusu bu alana girilir.

INFO

Case Sensitive Varsayılan: Kapalı ​

Yalnızca RegEx modunda görünür. İşaretli değilken arama harf duyarsız, işaretliyken harf duyarlı yapılır. String aramaları her zaman harf duyarlıdır.

INFO

New Content Zorunlu ​

Eşleşen metnin yerine konulacak yeni içerik bilgisi girilir.

Mask QueryNew ContentSonuç
http://https://Tüm HTTP linkleri HTTPS'e çevrilir
example.comnewsite.comDomain değişikliği
<div class="old"><div class="new">CSS class değişikliği

WARNING

Yeni içerik düz metin olarak yazılır. RegEx modunda kullanılan yakalama gruplarına \1, \2 gibi geri referanslarla atıfta bulunulamaz; bu ifadeler yazıldığı gibi çıktıya geçer. Eşleşmenin bir bölümünün korunması gerekiyorsa desen buna göre daraltılmalıdır.

INFO

Conditions ​

Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.

Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.

Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.

WARNING

Bu alanda herhangi bir koşul tanımlanmazsa, ilgili aksiyon koşulsuz (Always) olarak çalışır. Bu durumda aksiyon, ilgili vService'e gelen tüm trafiğe uygulanır.

Canlı ortamlarda, koşul tanımlanmadan aksiyon kullanılması beklenmeyen durumlara (servis kesintilerine) yol açabilir. Bu nedenle aksiyon oluşturulurken mutlaka en az bir koşul tanımlanması önerilir.

INFO

Form Butonları ​

Add ​

Add butonuna tıklanarak aksiyon ekleme işlemi tamamlanır.

Add & Repeat ​

Add & Repeat butonu ile aksiyon ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir aksiyon daha eklenebilir.

Aksiyon EklendiAksiyon Eklendi

Bu aksiyon vService genelinde sıkıştırmayı devre dışı bırakır

İçeriğin okunabilmesi için TR7, Kurum Servisinden sıkıştırılmamış yanıt ister. Bu istek koşuldan bağımsız olarak vService'ten geçen tüm trafiğe uygulanır; yalnızca koşulu sağlayan isteklere değil.

Sonuçları:

  • Kurum Servisi yanıtları gzip/brotli ile sıkıştırılmaz → bant genişliği kullanımı ve yanıt süresi artar.
  • vService'te tanımlı bir sıkıştırma profili varsa etkisiz kalır.
  • Yanıtlar sabit uzunluk yerine parçalı (chunked) olarak iletilir.

Bu nedenle aksiyon, yalnızca gerçekten içerik değişikliği gereken vService'lerde tanımlanmalıdır.

İşleme Sınırları

  • İçerik tipi denetimi yapılmaz; JSON, XML, JavaScript ve ikili (binary) yanıtlar da işlenir. İkili içerikte eşleşen bayt dizileri değiştirilerek dosya bozulabilir; aksiyon mutlaka içerik tipini sınırlayan bir koşulla kullanılmalıdır.
  • Yanıt gövdesi parça parça taranır. Parça sınırına denk gelen çok uzun eşleşmeler kaçırılabilir; Min. occurrences for masking değeri 1'den büyük seçildiğinde büyük yanıtlarda her parçanın ilk eşleşmesi maskelenmeden kalabilir.
  • Aynı vService'e birden fazla içerik değişikliği aksiyonu eklenebilir; bu durumda aksiyonlar sırayla zincirlenir ve birinin çıktısı diğerinin girdisi olur.
  • Geçersiz bir düzenli ifade girilirse aksiyon sessizce hiçbir şey yapmaz; uyarı üretilmez.

Operasyonel ve Güvenli Kullanım Önerileri ​

  • KVKK/GDPR Uyumluluğu İçin Maskeleme Kullanın. TC kimlik numarası, kredi kartı, telefon numarası gibi kişisel verileri Kurum Servisinden gelmeden önce maskeleyerek yasal uyumluluğu sağlayın.
  • Regex Desenlerini Test Edin. Maskeleme veya değiştirme işleminden önce regex deseninizi test panelinde doğrulayın. Yanlış desen, içeriğin bozulmasına neden olabilir.
  • Performans Etkisini Göz Önünde Bulundurun. İçerik değişikliği işlemi, yanıtın tamamının işlenmesini gerektirir ve büyük yanıtlarda gecikmeye neden olur; koşulları kullanarak yalnızca gerekli sayfalarda etkinleştirin.
  • HTML Enjeksiyonunda defer Kullanın. Script eklerken defer="defer" özniteliğini kullanarak sayfa yüklenme performansını koruyun.
  • Tolerance ile Doğrulama İmkanı Bırakın. Maskelemede tolerance değeri kullanarak verinin bir kısmının görünür kalmasını sağlayın. Bu, müşteri hizmetleri gibi senaryolarda doğrulama için gereklidir.
  • Koşullarla Hedefli Uygulama Yapın. İçerik değişikliğini tüm yanıtlarda değil, yalnızca belirli URL'lerde ya da içerik tiplerinde uygulayarak gereksiz işlem yükünden kaçının.
  • Content-Type Kontrolü Yapın. Bu aksiyon en iyi text/html içerik tipinde çalışır. JSON, XML veya binary içeriklerde beklenmedik sonuçlar oluşabilir.

Canlı Ortamlarda Yaygın Kullanım Senaryoları ​

Aşağıdaki örnekler, ilgili aksiyonun gerçek sistemlerde en sık karşılaşılan kullanım senaryolarında nasıl uygulandığını göstermektedir. Bu senaryolar, canlı ortamlarda yaygın olarak tercih edilen ve sahada edinilmiş deneyimlere dayanan pratikleri temel alır.

Senaryo 1: Mask Modu: KVKK Uyumluluğu için TC Kimlik Numarası Maskeleme ​

Problem: E-devlet entegrasyonu kullanan bir web uygulaması, kullanıcı bilgilerini HTML sayfasında gösteriyor. TC kimlik numaraları tam olarak görünüyor ve bu KVKK ihlali oluşturuyor. Kurum Servisinde değişiklik yapmak uzun sürecek, acil çözüm gerekiyor.

Çözüm: Mask modu kullanılarak yanıtlardaki TC kimlik numaraları otomatik maskelenir ve kişisel veri sızıntısı önlenir.

Konfigürasyon:

  • Modify Type: Mask
  • Query Type: RegEx
  • Built-in Mask Regexes: TC ID. NO (tıklanarak otomatik eklenir)
  • Mask Query: \b\d{11}\b
  • Case Sensitive: (işaretlenmez: arama harf duyarsız yapılır)
  • Omitted Characters: (boş bırakılır)
  • Masking Character: *
  • Masking Tolerance: 1
  • Min. Occurrences for Masking: 1
  • Conditions: Path /user/profile ile başlar

Sonuç:

  • ✅ KVKK uyumluluğu → TC kimlik numaraları maskelenir, yasal sorun ortadan kalkar.
  • ✅ Doğrulama imkanı → İlk ve son hane görünür (1*********1), doğrulama yapılabilir.
  • ✅ Kurum Servisi değişikliği yok → Kurum Servisi kodunda hiçbir değişiklik gerekmez.
  • ✅ Otomatik maskeleme → 11 haneli tüm sayılar otomatik algılanır ve maskelenir.
  • ✅ Path koşulu → Sadece kullanıcı profil sayfalarında aktif olur, gereksiz işlem yükü olmaz.

Örnek dönüşüm:

  • Girdi: TC Kimlik No: 12345678901, Adı: Ahmet Yılmaz
  • Çıktı: TC Kimlik No: 1*********1, Adı: Ahmet Yılmaz

Senaryo 2: Add HTML Code Modu: Tüm Sayfalara Google Analytics Tracking Kodu Ekleme ​

Problem: Şirket yeni bir web sitesi yayınladı ve tüm sayfalara Google Analytics tracking kodu eklenmesi gerekiyor. Ancak site 50+ farklı PHP sayfasından oluşuyor ve her sayfaya manuel kod eklemek çok zaman alacak. Ayrıca bazı sayfalar dinamik olarak üretiliyor.

Çözüm: Add HTML Code modu kullanılarak tüm HTML sayfalarının <head> bölümüne Google Analytics kodu otomatik eklenir.

Konfigürasyon:

  • Modify Type: Add HTML code
  • HTML Tag: <head></head>
  • Tag Modify Type: Append
  • HTML Content to Add:
html
<!-- Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XXXXXXXXXX');
</script>

Sonuç:

  • ✅ Otomatik enjeksiyon → Tüm HTML sayfalarına otomatik olarak Analytics kodu eklenir.
  • ✅ Zaman tasarrufu → 50+ sayfa için manuel kod eklemeye gerek kalmaz.
  • ✅ Dinamik sayfalar dahil → PHP, JSP gibi dinamik oluşturulan sayfalar da dahildir.
  • ✅ Performans → async ve defer kullanımı ile sayfa yüklenme hızı etkilenmez.
  • ✅ Content-Type koşulu → Sadece HTML sayfalarında aktif olur, JSON/XML yanıtları etkilenmez.
  • ✅ Kurum Servisi değişikliği yok → Kurum Servisi kodunda hiçbir değişiklik gerekmez.

Sayfa çıktısı:

html
<!DOCTYPE html>
<html>
<head>
<!-- Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XXXXXXXXXX');
</script>
<title>Ana Sayfa</title>
...

Senaryo 3: Replace Modu: Legacy Uygulama HTTP Linklerini HTTPS'e Dönüştürme ​

Problem: Eski ASP.NET uygulaması HTTP'den HTTPS'e geçirildi ancak uygulama kodunda hardcoded http:// linkleri var (örn: http://cdn.example.com, http://api.example.com). Kodu değiştirmek riskli ve zaman alıyor. Tarayıcılar mixed content (karışık içerik) uyarısı veriyor ve bazı kaynaklar yüklenmiyor.

Çözüm: Replace modu kullanılarak yanıt içeriğindeki tüm http:// linkleri https:// olarak değiştirilir ve mixed content sorunu çözülür.

Konfigürasyon:

  • Modify Type: Replace
  • Query Type: String
  • Mask Query: http://
  • Case Sensitive: (işaretlenmez: arama harf duyarsız yapılır)
  • New Content: https://
  • Conditions: HTTP Header Content-Type içerir text/html

Sonuç:

  • ✅ Mixed content çözümü → Tüm HTTP linkleri HTTPS'e dönüşür, tarayıcı uyarısı kalkar.
  • ✅ Kaynak yükleme → CDN, API ve harici kaynaklar HTTPS üzerinden yüklenir, engellenmez.
  • ✅ Güvenlik → Tüm içerik güvenli bağlantı üzerinden yüklenir.
  • ✅ Kurum Servisi değişikliği yok → Legacy kod olduğu gibi kalır, risk alınmaz.
  • ✅ Content-Type koşulu → Sadece HTML içerikte aktif olur, JSON/XML/resim dosyaları etkilenmez.

Örnek dönüşüm:

Girdi (Kurum Servisi yanıtı):

html
<img src="http://cdn.example.com/logo.png">
<script src="http://cdn.example.com/jquery.js"></script>
<a href="http://api.example.com/docs">API Docs</a>

Çıktı (İstemciye giden yanıt):

html
<img src="https://cdn.example.com/logo.png">
<script src="https://cdn.example.com/jquery.js"></script>
<a href="https://api.example.com/docs">API Docs</a>