HTML Varlık Kodlayıcı

Güvenli görüntüleme için HTML varlıklarını kodlayın ve çözün

Tam kılavuzu okuyun

Yaygın HTML Varlıkları:

&&
<&lt;
>&gt;
"&quot;
'&#39;
©&copy;
®&reg;
&trade;
&euro;
£&pound;
°&deg;
±&plusmn;

Tam HTML5 varlık desteği ile html-entities kütüphanesi tarafından desteklenmektedir.

HTML sayfalarında özel karakterleri (<, >, &, ", ') güvenli varlık kodlarına dönüştürün. XSS (Cross-Site Scripting) saldırılarına karşı koruma sağlayın. Türkçe karakterleri, emoji'leri ve sembolleri HTML varlıklarına çevirin. Web geliştirme, e-posta şablonları ve içerik yönetim sistemleri (CMS) için gerekli. WordPress, Joomla, Drupal ve özel PHP/Node.js projelerinde güvenli içerik görüntüleme. Tüm HTML5 named entities desteklenir—&amp;, &lt;, &gt;, &nbsp; ve 2000+ varlık.

HTML Varlık Kodlama (HTML Entity Encoding), HTML'de özel anlamı olan veya doğrudan yazılamayan karakterleri özel kod dizileriyle temsil etme yöntemidir. Üç format kullanılır: (1) Named Entities—&amp; (ampersand), &lt; (less than), &gt; (greater than), &nbsp; (non-breaking space). (2) Decimal Entities—&#60; (60 numaralı karakter = <). (3) Hexadecimal Entities—&#x3C; (hex 3C = <). HTML varlıkları 1991'de HTML spesifikasyonuyla tanıtıldı. HTML5'te 2000+ named entity tanımlanmıştır (&euro;, &copy;, &trade; gibi). Güvenlik açısından kritik: kullanıcı girdisi HTML'de görüntülenmeden önce mutlaka kodlanmalıdır—XSS saldırılarını önler. Türkçe karakterler (ü→&uuml;, ö→&ouml;, ş→&#351;) eski sistemlerde encoding sorunlarını çözmek için kullanılır.

XSS Güvenlik Koruması

Kullanıcı tarafından girilen verileri HTML'de görüntülemeden önce kodlayın. Yorum sistemleri, forum mesajları, kullanıcı profilleri ve form çıktılarında script injection'ı engelleyin. OWASP Top 10 güvenlik açıklarına karşı koruma.

E-Posta HTML Şablonları

E-posta pazarlama kampanyalarında (Mailchimp, Sendinblue, HubSpot) özel karakterlerin doğru görüntülenmesini sağlayın. Farklı e-posta istemcilerinde (Outlook, Gmail, Apple Mail) tutarlı görünüm için varlık kodlama kullanın.

CMS ve Blog Sistemleri

WordPress, Joomla, Drupal ve Ghost gibi içerik yönetim sistemlerinde makale içeriklerini güvenli şekilde işleyin. Kod örnekleri gösteren teknik bloglarda HTML etiketlerini düz metin olarak görüntüleyin.

Kod Örnekleri Paylaşımı

HTML, JavaScript veya PHP kod parçacıklarını web sayfalarında gösterirken <script>, <style> gibi etiketlerin çalışmasını engelleyin. Stack Overflow, GitHub Gist tarzı kod paylaşımları için gerekli.

Uluslararası Karakter Desteği

Eski sistemlerde veya encoding sorunu olan ortamlarda Türkçe ve diğer Unicode karakterleri güvenli şekilde aktarın. &Uuml;lke, &Ouml;zel gibi kodlamalar tüm tarayıcılarda çalışır.

XML ve RSS Feed'leri

RSS/Atom feed'lerinde ve XML dosyalarında özel karakterleri kodlayın. XML parser hatalarını önleyin. WordPress, Medium ve podcast RSS feed'leri için içerik hazırlığı.

HTML Varlık Kodlama, karakter eşleştirme tablolarını kullanır. Kodlama süreci: (1) Metin karakter karakter taranır. (2) HTML'de özel anlamı olan karakterler (<, >, &, ", ') tespit edilir. (3) Her özel karakter, karşılık gelen named entity veya numeric entity ile değiştirilir. Named entities okunabilirdir (&amp;) ancak sınırlıdır. Numeric entities (&#38; veya &#x26;) herhangi bir Unicode karakteri temsil edebilir. Çözme (decode) işleminde entity dizileri orijinal karakterlere dönüştürülür. Aracımız html-entities kütüphanesini kullanır—2000+ HTML5 named entity desteği. Üç mod: (1) Sadece özel karakterler (<, >, &, ", '), (2) ASCII dışı tüm karakterler, (3) Tüm karakterler. İşlem tarayıcıda gerçekleşir, veri sunucuya gönderilmez.

KarakterNamed EntityDecimalHexadecimal
<&lt;&#60;&#x3C;
>&gt;&#62;&#x3E;
&&amp;&#38;&#x26;
"&quot;&#34;&#x22;
ü&uuml;&#252;&#xFC;
&euro;&#8364;&#x20AC;

HTML varlıkları HTML 2.0'dan (1995) beri tüm tarayıcılarda desteklenmektedir. Named entities HTML5 spesifikasyonunda genişletildi (2000+ varlık). Numeric entities (decimal ve hex) herhangi bir Unicode karakteri temsil edebilir ve evrensel destek görür. Eski e-posta istemcilerinde (Outlook 2007 ve öncesi) bazı named entities sorunlu olabilir—numeric format daha güvenlidir.

Sıkça Sorulan Sorular

HTML varlık kodlaması neden gerekli?
HTML'de <, >, & gibi karakterler özel anlam taşır (etiket başlangıcı, varlık başlangıcı). Bu karakterleri düz metin olarak göstermek için kodlama şarttır. Ayrıca, kullanıcı girdisi kodlanmadan HTML'e eklenirse XSS (Cross-Site Scripting) güvenlik açığı oluşur—saldırganlar kötü amaçlı script çalıştırabilir.
Hangi karakterler mutlaka kodlanmalı?
Minimum 5 karakter: < (&lt;), > (&gt;), & (&amp;), " (&quot;), ' (&#39; veya &apos;). Bu karakterler HTML yapısını veya JavaScript string'lerini bozabilir. Güvenlik için kullanıcı girdisindeki tüm bu karakterleri kodlayın. Ek olarak, Unicode karakterler encoding sorunlarına karşı kodlanabilir.
Named entity mi numeric entity mi kullanmalıyım?
Named entities (&lt;, &amp;) daha okunabilir ve yaygın karakterler için idealdir. Numeric entities (&#60;, &#x3C;) herhangi bir Unicode karakteri temsil edebilir ve daha evrensel destek görür. Eski sistemler ve e-posta için numeric format daha güvenlidir. Aracımız her iki formatı da destekler.
XSS saldırısı nedir ve nasıl önlenir?
XSS (Cross-Site Scripting), saldırganın web sayfasına kötü amaçlı JavaScript enjekte etmesidir. Örnek: Yorum formuna <script>document.cookie</script> yazılırsa, kodlanmadan HTML'e eklendiğinde çalışır ve kullanıcı bilgileri çalınabilir. Önleme: Tüm kullanıcı girdisini HTML'de görüntülemeden önce entity kodlayın.
Türkçe karakterler kodlanmalı mı?
Modern UTF-8 encoding kullanan sistemlerde Türkçe karakterler (ü, ö, ş, ğ, ı, ç) doğrudan kullanılabilir. Ancak encoding sorunu olan eski sistemlerde, e-posta şablonlarında veya XML/RSS feed'lerinde &uuml;, &ouml; gibi kodlama sorunları önler. Emin değilseniz kodlamak daha güvenlidir.
&nbsp; ne işe yarar?
&nbsp; (Non-Breaking Space) iki kelimeyi birleştiren ve satır sonunda ayrılmayan boşluktur. Kullanım alanları: Sayı ve birim arasında (100&nbsp;TL), isim ve ünvan arasında (Dr.&nbsp;Ahmet), ve HTML'de birden fazla ardışık boşluk görüntülemek için (HTML normal boşlukları tek boşluğa daraltır).

İlgili Araçlar