Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Σχετικά έγγραφα
Τεχνολογίες ιαδικτύου

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 1: Εισαγωγή. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Προγραμματισμός Ιστοσελίδων (Web Design)

Εισαγωγή στους Υπολογιστές

Βασικές Έννοιες Web Εφαρμογών

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Ιόνιο Πανεπιστήµιο. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα Θ. Υπηρεσίες Internet. ρ. Ε. Μάγκος

Τεχνολογίες Παγκόσμιου Ιστού. 1η διάλεξη

ΔΙΚΤΥΑ. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Θέματα Προγραμματισμού Διαδικτύου Εισαγωγή - Πρωτόκολλα

Ενότητα 1: HTTP, Clients και Servers. (Web, το θεμέλιο του Σημασιολογικού Ιστού)

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Paybybank RESTful API GUIDE

PayByBank RESTful API GUIDE

Τεχνολογίες Διαδικτύου. Server Side Scripting I PHP

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

Ενότητα 2: HTTP, Clients και Servers (II) (Web, το θεμέλιο του Σημασιολογικού Ιστού)

1 η Διάλεξη: Εισαγωγή στο Διαδίκτυο

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη

Πρωτόκολλο FTP. Από τα παλαιότερα πρωτόκολλα του ArpaNet Το FTP είναι μια τυποποίηση του TCP/IP Πρόκειται για πρωτόκολο γενικού σκοπού

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών: Ηλεκτρονικό Ταχυδρομείο - SMTP

Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα

Διάλεξη 7 η - Networks

Client server Peer-to-peer (Οµότιµα ίκτυα)

Περί δικτύων. Δρ. Ματθαίος Πατρινόπουλος

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

α) η καταγραφή και η σύλληψη της δικτυακής κίνησης (capture) και β) η ανάλυση της δικτυακής κίνησης.

Εργαστήριο 3. Εγκατάσταση LAMP Stack στο AWS

ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ FTP

Περιεχόμενα. Πρόλογος... xiii

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο

Δίκτυα Υπολογιστών Ενότητα 2: HTTP HyperText Transfer Protocol

Σκήκα Δπηζηήκεο Τπνινγηζηώλ ΠΣΤΥΗΑΚΖ ΔΡΓΑΗΑ

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

Υπολογιστές και ίκτυα Η/Υ.

XAMPP Apache MySQL PHP javascript xampp

6.2 Υπηρεσίες Διαδικτύου

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

Network Address Translation (NAT)

Οδηγίες αξιοποίησης για τον Εκπαιδευτικό

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

7.2.2 Σχέση OSI και TCP/IP

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

ιαχείριση Πληροφοριών στο ιαδίκτυο

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Το πρωτόκολλο ΗΤΤΡ (HyperText Transfer Protocol)

Εργαστηριακή Άσκηση 5

Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης

Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών: Υπηρεσία Ηλεκτρονικού Ταχυδρομείου - SMTP

Διαχείριση Πληροφοριών στο Διαδίκτυο. Εργαστήριο 1

ιαδικτυακές Εφαρµογές

Τεχνολογίες Διαδικτύου

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

wget --post-file meme.jpg :9646

ΔΝΓΔΙΚΣΙΚΔ ΑΠΑΝΣΗΔΙ 3 εο ΓΡΑΠΣΗ ΔΡΓΑΙΑ

Μεταπτυχιακή Διατριβή

Πρωτόκολλα Διαδικτύου (ΨΣ-326 DS151)

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

Δίκτυα Επικοινωνιών Δίκτυα Υπολογιστών και Στρώμα Εφαρμογής Διδάσκοντες: Δρ. Ευγενία Αδαμοπούλου, Δρ. Κώστας Δεμέστιχας

Δίκτυα Η/Υ ςτην Επιχείρηςη

Δίκτυα Υπολογιστών Επίπεδο Εφαρμογής Ιωάννης Κορίνθιος Δρ. Ηλεκτρολόγος Μηχανικός ΕΜΠ

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425

FTP - (File Transfer Protocol ) Πρωτόκολλο Μεταφοράς Αρχείων

Το πρωτόκολλο HTTP 1

Κ. Σ. Χειλάς Τ.Ε.Ι. Σερρών - Τµήµα Πληροφορικής και Επικοινωνιών. ΕΡΓΑΣΤΗΡΙΟ 1ο ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ (FTP)

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services

Δίκτυα Υπολογιστών ΙΙ (Ασκήσεις Πράξης)

Πρόσβαση μέσω webdav. ΚΕ.Δ.Δ. Τ.Ε.Ι. Μεσολογγίου. 3. Στην συνέχεια πληκτρολογούμε το username και το password και πατάμε στο κουμπί Είσοδος.

Μεταφορά Αρχείων µε χρήση της Υπηρεσίας FTP σελ. 1

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

Για το μέρος αυτό της άσκησης θα υλοποιήσετε μια εφαρμογή κελύφους η οποία θα χρησιμοποιείται ως εξής:

Κεφάλαιο 2 Επίπεδο Εφαρμογής

Επίπεδο δικτύου IP Forwading κτλ

Πλοήγηση www / Με τον Internet Explorer

Εισαγωγή Επανάληψη. ΤΕΙ Στερεάς Ελλάδας. ΣT Εξάμηνο, Κατεύθυνση Μηχανικών Δικτύων Τ.Ε. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Διαδικτυακός Προγραμματισμός

PayByBank RESTful API

Εγκατάσταση & Παραµετροποίηση Εξυπηρετητή Πιστοποίησης Χρηστών (Radius Server)

Άσκηση 2 η Πρωτόκολλο επικοινωνίας TCP/IP

Επαναληπτικές Ασκήσεις Μαθήματος

Διδάσκων: Παναγιώτης Ανδρέου

Σχεδίαση και Ανάπτυξη Ιστότοπων

Εργαστηριακή Άσκηση 10 Πλοήγηση στον παγκόσμιο ιστό

Επίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής

Μητρώο [.gr] Οδηγός ιασύνδεσης. Αξιοποίησης του Εξυπηρετητή EPP. Έκδοση 2.0. [ EPP Server Connection and Use Guide ]

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος

Κάντε κλικ για έναρξη

Transcript:

HTTP Protocol

Web and HTTP Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Web Servers (1/2) Ένα πρόγραμμα (λογισμικό) που έχει εγκατασταθεί σε ένα υπολογιστικό σύστημα (έναν ή περισσότερους υπολογιστές) και τρέχει διαρκώς στο παρασκήνιο ως υπηρεσία (service): Δέχεται αιτήσεις σε ένα network port HTTP: χρησιμοποιεί το port 80 over TCP HTTPS: χρησιμοποιεί το port 443 over SSL/TLS «Ακούει» το δικτυακό port Αποδέχεται ή απορρίπτει αιτήσεις σε συγκεκριμένο port Επεξεργάζεται IP αιτήσεις από τους clients Στέλνει IP αποκρίσεις πίσω στους clients

Web Servers (2/2) Software Υπάρχουν διάφοροι web servers Εγκαθίστανται σε όλα τα λειτουργικά συστήματα Στην πλειονότητα τρέχουν σε περιβάλλον LINUX ή UNIX-like OS Συναντώνται όμως και σε Windows Πιο δημοφιλές : Apache HTTP Server (διατίθεται δωρεάν) MS IIS, κλπ

Web Browser Ο web browser είναι μια εφαρμογή (software application) εγκαταστημένη στον υπολογιστή ή κινητό του χρήστη. Βασικές λειτουργίες: Αιτείται πόρους από διάφορους web servers που ενδιαφέρουν το χρήστη όπως (π.χ. ιστοσελίδες, αρχεία μουσικής, video, εικόνες κ.τ.λ.) Λαμβάνει αρχεία HTML(ιστοσελίδες ή εναλλακτικά αρχεία μουσικής, video και εικόνες) Τα παρουσιάζει στο χρήστη. Διαδραστικά: επιτρέπει στο χρήστη να περιηγηθεί μεταβαίνοντας από σύνδεσμο σε σύνδεσμο

Internet Protocols Ένα πρωτόκολλο διαδικτύου είναι μια προδιαγραφή που καθορίζει ποιες αιτήσεις (requests ) και αποκρίσεις (responses) είναι για επικοινωνία και μεταφορά δεδομένων μεταξύ δύο υπολογιστικών συστημάτων. Παράδειγμα HTTP (GET, POST) FTP

Διασύνδεση: Web server Web browser-http ΗλειτουργίατουHTTP πρωτοκόλλου όπως ενσωματώνεται στην αρχιτεκτονική μιας web εφαρμογής

Πρωτόκολλο Μεταφοράς Υπερκειμένου HTTP (HyperText Transfer Protocol) Το πρωτόκολλο HTTP Το HTTP ανήκει στο στρώμα εφαρμογών του Διαδικτύου υλοποιείτε από ένα πρόγραμμα πελάτη (client program π.χ web browser) και ένα πρόγραμμα εξυπηρετητή (server program π.χ web server). Τα δύο προγράμματα εκτελούνται σε διαφορετικά μηχανήματα Επικοινωνούν με HTTP μηνύματα.

HTTP Βασικά Χαρακτηριστικά HTTP connectionless: Πραγματοποιείται μια σύνδεση για αποστολή αίτησης από τον client Αποσυνδέεται και περιμένει απόκριση από τον server Επανασύνδεση για την λήψη της απόκρισης media independent: Κάθε τύπος δεδομένων μπορεί να σταλεί από το πρωτόκολλο. Τον χειρισμό των δεδομένων αναλαμβάνουν οι client - server. stateless: μόλις ένας κύκλος request/response έχει ολοκληρωθεί όλες οι πληροφορίες που έχει ο server για τον client χάνονται.

HTTP Το HTTP ανήκει στην κατηγορία πρωτοκόλλων request-response (κάθε φάση του πρωτοκόλλου ολοκληρώνεται με την ανταλλαγή ενός αιτήματος): 1. Ο browser ανοίγει μια σύνδεση. 2. Ο browser στέλνει μια αίτηση (request ) στον server. 3. Ο server στέλνει μια απόκριση στον browser. 4. Ησύνδεσηκλείνει. Η επικοινωνία του HTTP γίνεται με τη χρήση του TCP

HTTP Λειτουργία η HTTP επικοινωνία εκκινείται από έναν user agent αιτώντας έναν πόρο από έναν server. HTTP: Client/server connection HTTP: Client/server connection with intermediaries in between HTTP: Cached server response

HTTP Request and Response (Παράδειγμα) Request (from client to server) GET /index.html HTTP/1.0 Response Info (from server to client) HTTP/1.1 200 OK Date: Mon, 21 Sep 2009 20:36:40 GMT Content-Length: 9490 Content-Type: text/html; charset=utf-8 HTTP/1.1 404 Not Found Date: Mon, 21 Sep 2009 20:44:59 GMT Content-Type: text/html; charset=utf-8 Γραμμή αίτησης: «ζητά το αρχείο index.html»

Δομή request

Δομή request Ένα HTTP request (request line ) διακρίνεται σε τρία βασικά μέρη: Request Method Προσδιορίζει την ενέργεια που θα εκτελεστεί σε ένα πόρο στο server: HEAD, GET, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT, PATCH. Request-URI (Uniform Resource Identifier URI):ενιαίο αναγνωριστικό πόρων. Αναφέρεται στις www διευθύνσεις και σε ένα συνδυασμό από Uniform Resource Locators (URLs) και Uniform Resource Names (URNs). Στην πραγματικότητα είναι ακολουθίες χαρακτήρων που προσδιορίζουν την θέση και το όνομα ενός πόρου. Συνήθως προσδιορίζεται ως: Request-URI = "*" absoluteuri abs_path authority HTTP version: η έκδοση του HTTP πρωτοκόλλου που χρησιμοποιεί ο χρήστης.

Δομή Response HTTP-version status-code reason-phrase Ένα HTTP Response (status line ) διακρίνεται επίσης σε τρία βασικά μέρη: HTTP Version Την έκδοση του HTTP πρωτοκόλλου που χρησιμοποιείται. Status Code Ένα κωδικό με το αποτέλεσμα την διαδικασίας (π.χ. κωδικός για επιτυχία ή κωδικός κάποιου λάθους) Περιλαμβάνει headers παρόμοια σε σκοπό και δομή με αυτά των HTTP Request Headers. Reason-phrase Μια λέξη που περιγράφει το αποτέλεσμα της διαδικασίας.

HTTP methods: GET, POST Η μέθοδος GET χρησιμοποιείται για την αίτηση αποστολής ενός πόρου από το server πίσω στον πελάτη. Πρότυπο: η μέθοδος GET θα πρέπει να χρησιμοποιείται αποκλειστικά για την ανάκτηση δεδομένων (π.χ. μιας ιστοσελίδας) και μόνο (όχι για π.χ. αποθήκευση ή ενημέρωση δεδομένων στο server κ.τ.λ.) Δεν τηρείται πάντα. Αν το request συνοδεύεται από δεδομένα του πελάτη αυτά προσκολλώνται στourl. Είναι ορατά άμεσα στο χρήστη, αφού εμφανίζεται στο URL.

HTTP methods: GET, POST ημέθοδοςpost χρησιμοποιείται τυπικά για την αποστολή δεδομένων στο server (π.χ για παράδειγμα το όνομα και ο κωδικός ενός χρήστη που αποστέλλονται στο server μέσω μιας φόρμας login). τα προς αποστολή δεδομένα δεν προσκολλώνται στην URL παρά τοποθετούνται στο HTTP Request Body. Κατά συνέπεια μπορεί να έχουν πολύ μεγαλύτερο μέγεθος Δεν είναι άμεσα ορατά από τον χρήστη.

HTTP methods: GET, POST Χρήση GET, POST σε HTML form

HTTP- status code Status code Informational (1xx) Successful (2xx) Redirection (3xx) Client error (4xx) Server error (5xx)

HTTP- status code Παραδείγματα 1XX Informational 100: The server has received the first part of the request. 2XX Success 200: The request is successful and the response is returned in the following message body. 3XX Redirection 300: Multiple choices. 4XX Client error 404: The requested file is not found. 5XX Server error 500: Internal server error.