Τρόπος χρήσης ετικετών μετα-χαρακτήρων για κωδικοποίηση χαρακτήρων σε HTML5

click fraud protection

Πριν από την εισαγωγή του HTML5, ο καθορισμός της κωδικοποίησης χαρακτήρων σε ένα έγγραφο με ένα στοιχείο απαιτούσε να γράψετε την κάπως λεκτική γραμμή που φαίνεται παρακάτω. Αυτό είναι το Meta Charset στοιχεία εάν χρησιμοποιείτε HTML4 στην ιστοσελίδα σας:


Αυτό που είναι σημαντικό να παρατηρήσετε σε αυτόν τον κώδικα είναι τα εισαγωγικά που βλέπετε γύρω από το περιεχόμενο Χαρακτηριστικό: περιεχόμενο ="κείμενο / html; charset = iso-8859-1". Όπως όλα τα χαρακτηριστικά HTML, αυτά τα εισαγωγικά καθορίζουν την τιμή του χαρακτηριστικού, υποδεικνύοντας ότι ολόκληρη η συμβολοσειρά κείμενο / html; charset = iso-8959-1 είναι το περιεχόμενο αυτού του στοιχείου. Αυτό είναι σωστό HTML, και έτσι έπρεπε να γραφτεί αυτή η συμβολοσειρά. Είναι επίσης σκληρό και μακρύ και άσχημο! Επίσης, δεν είναι κάτι που πιθανότατα θα θυμάστε από το κεφάλι σας!

Στις περισσότερες περιπτώσεις, οι προγραμματιστές ιστού θα έπρεπε να αντιγράψουν και να επικολλήσουν αυτόν τον κώδικα από έναν ιστότοπο σε οποιονδήποτε νέο που ανέπτυξαν επειδή το γράφοντας από το μηδέν ζητούσε πολλά.

instagram viewer

Το HTML5 κόβει το Extra "Stuff"

Το HTML5 όχι μόνο πρόσθεσε μερικά νέα στοιχεία στη γλώσσα, αλλά απλοποίησε επίσης πολύ το σύνταγμα του HTML, συμπεριλαμβανομένου του στοιχείου Meta Charset. Με το HTML5, μπορείτε να προσθέσετε την κωδικοποίηση χαρακτήρων σας με την πολύ πιο εύκολη στη μνήμη σύνταξη για το ΜΕΤΑ στοιχείο που βλέπετε παρακάτω:


Συγκρίνετε αυτήν την απλοποιημένη σύνταξη με αυτό που γράψαμε στην αρχή αυτού του άρθρου, την παλιά σύνταξη που χρησιμοποιήθηκε για το HTML4 και θα δείτε πόσο πιο εύκολο είναι να γράψετε και να θυμάστε την έκδοση HTML5. Αντί να χρειαστεί να το αντιγράψετε και να το επικολλήσετε από έναν υπάρχοντα ιστότοπο σε οποιονδήποτε νέο που εργαζόσασταν, αυτό είναι απολύτως κάτι που, ως προγραμματιστής web front-end, θα μπορούσατε να θυμάστε. Αυτή η εξοικονόμηση χρόνου μπορεί να μην είναι πολύ, αλλά όταν λάβετε υπόψη τους άλλους τομείς σύνταξης που απλοποίησε το HTML5, η εξοικονόμηση αυξάνεται!

Να συμπεριλαμβάνεται πάντα η κωδικοποίηση χαρακτήρων

Πρέπει πάντα να συμπεριλαμβάνετε κωδικοποίηση χαρακτήρων για τις ιστοσελίδες σας, ακόμα κι αν δεν σκοπεύετε ποτέ να χρησιμοποιήσετε καμία ειδικοί χαρακτήρες. Εάν δεν συμπεριλάβετε κωδικοποίηση χαρακτήρων, ο ιστότοπός σας καθίσταται ευάλωτος σε επιθέσεις δέσμης ενεργειών μεταξύ ιστότοπων χρησιμοποιώντας το UTF-7.

Σε αυτό το σενάριο, ένας εισβολέας βλέπει ότι ο ιστότοπός σας δεν έχει καθοριστεί κωδικοποίηση χαρακτήρων, επομένως παραπλανά το πρόγραμμα περιήγησης στο να σκεφτεί ότι η κωδικοποίηση χαρακτήρων της σελίδας είναι UTF-7. Στη συνέχεια, ο εισβολέας εισάγει κωδικοποιημένα σενάρια UTF-7 στην ιστοσελίδα και ο ιστότοπός σας έχει παραβιαστεί. Αυτό είναι προβληματικό για όλους τους εμπλεκόμενους, από την εταιρεία σας έως τους επισκέπτες σας. Τα καλά νέα είναι ότι είναι απλό πρόβλημα να αποφύγετε - φροντίστε να προσθέσετε κωδικοποίηση χαρακτήρων σε όλες τις ιστοσελίδες σας.

Πού να προσθέσετε κωδικοποίηση χαρακτήρων

Ο κωδικοποίηση χαρακτήρων για μια ιστοσελίδα πρέπει να είναι η πρώτη γραμμή των HTML σας

στοιχείο. Αυτό διασφαλίζει ότι το πρόγραμμα περιήγησης γνωρίζει ποιος είναι ο χαρακτήρας κωδικοποίησης πριν κάνει οτιδήποτε άλλο στη σελίδα εκτός από τον προσδιορισμό του τύπου και να προσδιορίσει ότι πρόκειται για σελίδα HTML. Το HTML σας πρέπει να έχει ως εξής:




...

Χρήση κεφαλίδων HTTP για επιπλέον ασφάλεια

Μπορείτε επίσης να καθορίσετε την κωδικοποίηση χαρακτήρων στις κεφαλίδες HTTP. Αυτό είναι ακόμη πιο ασφαλές από την προσθήκη του στη σελίδα HTML, αλλά θα πρέπει να έχετε πρόσβαση στις διαμορφώσεις διακομιστή ή .htaccess αρχεία, που σημαίνει ότι ίσως χρειαστεί να συνεργαστείτε με τον πάροχο φιλοξενίας του ιστότοπού σας για να αποκτήσετε τέτοιου είδους πρόσβαση ή να τους ζητήσετε να κάνουν τις αλλαγές εσείς. Η πρόσβαση είναι η πρόκληση εδώ. Η ίδια η αλλαγή είναι απλή, οπότε οποιοσδήποτε πάροχος φιλοξενίας θα πρέπει να μπορεί να κάνει αυτήν την αλλαγή για εσάς με σχετική ευκολία.

Εάν χρησιμοποιείτε Απάχης, μπορείτε να ορίσετε το προεπιλεγμένο σύνολο χαρακτήρων για ολόκληρο τον ιστότοπό σας προσθέτοντας: AddDefaultCharset UTF-8 στη ρίζα σας .htaccess αρχείο. Το προεπιλεγμένο σύνολο χαρακτήρων του Apache είναι ISO-8859-1.

instagram story viewer