Meta Charset Tag yn HTML5

Skaaimerk kodearring yn HTML5 ynstelle

Foarôfgeand oan de yntroduksje fan HTML5, sette de teken kodearring op in dokumint mei in elemint oanwêzich om de wat skynde line te skriuwen. Dit is de meta Charset-eleminten as jo HTML4 brûke yn jo webside:

Wat wichtich is om yn dizze koadeare te besjen de quotaasjemarken dy't jo sjogge om it ynhâld- attribút te sjen: content = " text / html; charset = iso-8859-1 " . As alle HTML-attributen beskiede dizze quotaasje marken de wearde fan it attribút, wêrby't oanwêzich is dat de komplete string tekst / html; charset = iso-8959-1 is de ynhâld fan dit elemint. Dit is korrekte HTML en it is hoe dizze string betsjutte moat wurde skreaun. It is ek ûnwieldich lang en ûnsjoch! It is ek wat dat jo wierskynlik net fan 'e top fan' e holle achtsje! Yn 'e measte gefallen moatte webûntwikkelders dizze koade kopiearje en plakke fan in side nei elke nij, dy't se ûntwikkele wiene omdat dit skreaun fan' e scratch hat in soad frege.

HTML5 útsteket de Extra & # 34; Stuff & # 34;

HTML5 hat net allinich in oantal nije eleminten oan 'e taal tafoege , mar it makket ek in protte simplof de syntaksis fan HTML, wêrûnder it meta Charset-elemint. Mei HTML5 kinne jo jo karakter kodearring tafoegje mei it folle makliker om syntax foar it META- elemint te hâlden dat Jo sjogge hjirûnder:

Fergelykje dy ferienfâldige syntaksis nei wat wy skreaun hawwe by it begjin fan dit artikel, de âlde syntaks foar HTML4, en jo sjogge hoefolle makliker te skriuwen en te ferjitten binne de HTML5 ferzje is echt. Ynstee fan it kopiearjen en te plakjen fan in besteande side yn in nije side dy't jo wurke hawwe, is dit perfoarst wat, as in webstee-ûntwikkelders, kinne jo oantinken oanpasse. Dizze savings fan 'e tiid binne in soad net folle, mar as jo de oare sytaksjes berikke dat HTML5 ferfollet, makket de sparjen tafoegje!

Alaarm de Character Encoding yn

Jo moatte altyd karakter kodearring foar jo websiden oanmeitsje, ek as jo ea gjin spesjale tekens hawwe . As jo ​​gjin teken kodearring ynfolje, wurdt jo side kwetsber foar in cross-site-skripsje-oanfal mei UTF-7.

Yn dit senario sjogge in anulator dat jo side gjin karakter kodearing definiearre hat, dus it troket de browser yn te tinken dat de karakter kodearring fan 'e side UTF-7 is. Dêrnei ynteressearret de oanfaller UTF-7 codearre skripts yn 'e webside en jo side is hacked. Dat is fansels problematysk foar alle belutsenen, fan jo bedriuw nei jo besikers. It goede nijs is dat it in ienfâldige probleem is om te foarkommen - allinich wêze dat jo karakter kodearring oan jo alle websides tafoegje.

Wêr't jo karfurd taheakje taheakje

De teken kodearring foar in webside moat de earste line fan jo elemint elemint wêze fan HTML. Dit soarget derfoar dat de blêder wit wat de tekens kodearring is foardat it wat oars op 'e side makket as de doctype te bepalen en te bepalen dat it in HTML side. Jo HTML moat lêze:

...

Brûk HTTP-kopteksten foar ekstra feiligens

Jo kinne ek de karakter kodearing yn 'e HTTP-headers opjaan. Dit is noch feiliger as it oanmeitsjen fan 'e HTML-side, mar jo hawwe tagong ta de serverkonfiguraasjes of .htaccess-bestannen, dat betsjut dat jo wurkje moatte mei jo webserver fan jo webside om dizze type tagong te krijen of hawwe se makke de feroaringen foar jo. Tagong is wier de útdaging hjir. De wiziging sels is ienfâldich, dus in hosting-leveransier kin dizze wiziging foar jo mei relative relaasje meitsje.

As jo ​​brûkeApache, kinne jo de standert tekenrige foar jo hiele side sette troch te tafoegje: AddDefaultCharset UTF-8 nei jo root .htaccess- bestân. Apache's standert tekenset is ISO-8859-1 .