Το πρωτόκολλο HTTP (Hypertext Transfer Protocol) παρέχει ένα πρότυπο πρωτόκολλο δικτύου το οποίο χρησιμοποιούν τα προγράμματα περιήγησης και οι διακομιστές ιστού για την επικοινωνία. Είναι εύκολο να το αναγνωρίσετε κατά την επίσκεψη σε έναν ιστότοπο, επειδή είναι γραμμένο σωστά στη διεύθυνση URL (π.χ. http://www.Go-Travels.com ).
Αυτό το πρωτόκολλο είναι παρόμοιο με άλλα όπως το FTP, επειδή χρησιμοποιείται από ένα πρόγραμμα-πελάτη για να ζητήσει αρχεία από έναν απομακρυσμένο διακομιστή. Στην περίπτωση του HTTP, είναι συνήθως ένα πρόγραμμα περιήγησης ιστού που ζητά αρχεία HTML από έναν διακομιστή ιστού, τα οποία στη συνέχεια εμφανίζονται στο πρόγραμμα περιήγησης με κείμενο, εικόνες, υπερσυνδέσεις κ.λπ.
Το HTTP είναι αυτό που ονομάζεται a ανιθαγενές σύστημα . Αυτό σημαίνει ότι σε αντίθεση με άλλα πρωτόκολλα μεταφοράς αρχείων, όπως το FTP, η σύνδεση HTTP πέφτει μόλις γίνει το αίτημα. Έτσι, μόλις το πρόγραμμα περιήγησης ιστού σας στείλει το αίτημα και ο διακομιστής ανταποκριθεί με τη σελίδα, η σύνδεση είναι κλειστή.
Δεδομένου ότι τα περισσότερα προγράμματα περιήγησης ιστού προεπιλεγούν σε HTTP, μπορείτε να πληκτρολογήσετε μόνο το όνομα τομέα και να έχετε το πρόγραμμα περιήγησης αυτόματη στο τμήμα "http: //".
Ιστορικό HTTP
Ο Tim Berners-Lee δημιούργησε το αρχικό HTTP στις αρχές της δεκαετίας του 1990 ως μέρος του έργου του στον ορισμό του αρχικού World Wide Web. Τρεις πρωταρχικές εκδόσεις αναπτύχθηκαν ευρέως κατά τη διάρκεια της δεκαετίας του 1990:
- HTTP 0.9 (για υποστήριξη βασικών εγγράφων υπερκειμένου)
- HTTP 1.0 (επεκτάσεις για υποστήριξη πλούσιων ιστότοπων και δυνατότητα κλιμάκωσης)
- HTTP 1.1 (που αναπτύχθηκε για να αντιμετωπίσει τους περιορισμούς απόδοσης του HTTP 1.0, που καθορίζονται στο Internet RFC 2068)
Η τελευταία έκδοση, το HTTP 2.0, έγινε ένα εγκεκριμένο πρότυπο το 2015. Διατηρεί συμβατότητα με το HTTP 1.1, αλλά προσφέρει επιπλέον βελτιώσεις επιδόσεων.
Ενώ το τυπικό HTTP δεν κρυπτογραφεί την επισκεψιμότητα που στέλνεται μέσω δικτύου, το πρότυπο HTTPS αναπτύχθηκε για να προσθέσει κρυπτογράφηση σε HTTP μέσω της χρήσης (αρχικά) του Secure Sockets Layer (SSL) ή (αργότερα) του Transport Layer Security (TLS).
Πώς λειτουργεί το HTTP
HTTP είναι ένα πρωτόκολλο εφαρμογής στρώματος που είναι χτισμένο πάνω από το TCP που χρησιμοποιεί ένα μοντέλο επικοινωνίας πελάτη-διακομιστή. Οι υπολογιστές-πελάτες και οι διακομιστές HTTP επικοινωνούν μέσω μηνυμάτων αίτησης και απόκρισης HTTP. Οι τρεις κύριοι τύποι μηνυμάτων HTTP είναι GET, POST και HEAD.
- HTTP GET τα μηνύματα που αποστέλλονται σε ένα διακομιστή περιέχουν μόνο μια διεύθυνση URL. Στο τέλος της διεύθυνσης URL μπορούν να επισυναφθούν μηδενικές ή περισσότερες προαιρετικές παράμετροι δεδομένων. Ο διακομιστής επεξεργάζεται το προαιρετικό τμήμα δεδομένων της διεύθυνσης URL, εάν υπάρχει, και επιστρέφει το αποτέλεσμα (μια ιστοσελίδα ή ένα στοιχείο μιας ιστοσελίδας) στο πρόγραμμα περιήγησης.
- HTTP POST μηνύματα τοποθετούν τις προαιρετικές παραμέτρους δεδομένων στο σώμα του μηνύματος αίτησης αντί να τις προσθέτουν στο τέλος της διεύθυνσης URL.
- HTTP HEAD η αίτηση λειτουργεί το ίδιο με τα αιτήματα GET. Αντί να απαντά με το πλήρες περιεχόμενο της διεύθυνσης URL, ο διακομιστής στέλνει πίσω μόνο τις πληροφορίες κεφαλίδας (που περιέχονται στο τμήμα HTML).
Το πρόγραμμα περιήγησης εκκινεί την επικοινωνία με ένα διακομιστή HTTP εκκινώντας μια σύνδεση TCP στο διακομιστή. Οι περιόδους περιήγησης στο Web χρησιμοποιούν την θύρα διακομιστή 80 από προεπιλογή, αν και χρησιμοποιούνται μερικές φορές άλλες θύρες όπως το 8080.
Μόλις δημιουργηθεί μια περίοδος σύνδεσης, ο χρήστης ενεργοποιεί την αποστολή και λήψη μηνυμάτων HTTP με την επίσκεψη στην ιστοσελίδα.
Θέματα με HTTP
Τα μηνύματα που μεταδίδονται μέσω HTTP μπορούν να παραδοθούν με επιτυχία για διάφορους λόγους:
- σφάλμα χρήστη
- δυσλειτουργία του προγράμματος περιήγησης ιστού ή διακομιστή ιστού
- σφάλματα στη δημιουργία ιστοσελίδων
- προσωρινές δυσλειτουργίες δικτύου
Όταν προκύψουν αυτές οι αποτυχίες, το πρωτόκολλο καταγράφει την αιτία της βλάβης (αν είναι δυνατόν) και αναφέρει έναν κωδικό σφάλματος πίσω στο πρόγραμμα περιήγησης που ονομάζεται γραμμή / κωδικό κατάστασης HTTP. Τα σφάλματα ξεκινούν με έναν συγκεκριμένο αριθμό για να υποδείξουν τι είδους σφάλμα είναι.
Για παράδειγμα, τα σφάλματα 4xx υποδεικνύουν ότι το αίτημα για τη σελίδα δεν μπορεί να ολοκληρωθεί σωστά ή ότι το αίτημα περιέχει εσφαλμένη σύνταξη. Για παράδειγμα, 404 σφάλματα σημαίνει ότι η σελίδα δεν μπορεί να βρεθεί. μερικοί ιστότοποι έχουν ακόμη κάποιες προσαρμοσμένες 404 σελίδες σφάλματος.