HTTP web server new

79 476 0
HTTP  web server new

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 The HTTP Protocol & Web Server Web Server & Các vấn đề liên quan Vai trò web server • Nhận yêu cầu từ trình duyệt • Cung cấp – Dịch vụ truy xuất các tài liệu siêu liên kết – Quản lý việc truy cập đến website – Cung cấp số chế cho việc thực mã scripts phía Server (ASP, PHP, JSP, vv ) • CGI-Common Gateway Interface • API-Application Programming Interface – Tạo file nhật ký thống kê sử dụng Các loại web server Khảo sát netscraft.com tính đến tháng 4/2008 Mô hình tương tác WebServer Client Client Server machine Requests HTTP server Browser Responses Client Browser HTML documents CGI scripts ASP, PHP, JSP vv Các bước truyền thông Client Server Các công việc thực phía Server Chấp nhận kết nối từ Client đóng kết nối Nhận request Xử lý request Truy cập vào tài nguyên request Tạo HTTP response với kết theo yêu cầu client Gửi response cho client Ghi lại giao dịch vào file nhật ký Các công việc thực phía Server Nhận kết nối: • Nhận từ chối kết nối • Xác định định danh máy Client • Xác định danh người dùng (ident protocol) Nhận request từ client • Nhận request từ client • Đọc request biểu diễn dạng phù hợp cho việc xử lý Các công việc thực phía Server Nhận request từ client Cấu trúc lại request để thuận lợi cho việc xử lý Các công việc thực phía Server Xử lý request: Khi web server nhận request xử lý request tùy thuộc vào dạng request Truy cập vào tài nguyên request Web Server hỗ trợ nhiều dạng ánh xạ tài nguyên dạng đơn giản sử dụng request URI để đến tài nguyên webserver Response Dòng khởi tạo headers Dòng trống Nội dung HTTP/1.0 200 OK Date: Sunday, 25 November 2001 18:42:05 GMT Content-Type: text/html Content-Length: 109 Request Headers Accept Dạng liệu chấp nhận client User-Agent Định danh trình duyệt người dùng Referer URL tham chiếu yêu cầu trình duyệt Authorization Dữ liệu xác thực yêu cầu Server Accept-Language Request Headers • Accept: text/html, image/* Chỉ dạng media chấp nhận • Accept-Charset: iso-8859-5 Chỉ tập ký tự chấp nhận • Accept-Encoding: compress, gzip Chỉ loại mã chấp nhận • Accept-Language: en, fr=0.5 Chỉ ngôn ngữ ưu tiên, chấp nhận • Authorization: Sử dụng để chuyển thông tin mật xác thực người dùng đến Server Request Headers • Host: www.sfsu.edu:8080 Tên máy chủ cổng yêu cầu URL • Referer: http://www.sfsu.edu/index.html URL tài liệu mà tham chiếu đến tài liệu đưa URL request • User-agent: Mozilla/4.5 (X11;Solaris 5.1) Tên phiên trình duyệt người dùng chí hệ điều hành sử dụng Ví dụ GET Request • Một GET request yêu cầu lấy tài liệu từ Server ví dụ Nhấn vào • Request từ client chứa dòng sau: GET /html/file.html HTTP/1.1 Accept: text/plain Accept: application/pdf Accept: application/html Accept: text/x-html Accept: audio/* Accept: */* User-Agent: NCSA Mosaic for the X Window System/2.4 Referer: http://server10.edu.net.vn/html/prevfile.html If-Modified-Since: Wed, 11 Feb 2008 13:14:15 GMT Response Headers Cache-Control Chính sách Cache yêu cầu Server Connection Quản lý kết nối WWWAuthenticate Yêu cầu xác thực Server Location Địa trình duyệt nên thực gửi yêu cầu Expires Thời gian tài liệu thay đổi Response Headers Content-type Các dạng tài liệu response MIME Content-length Độ dài nội dung liệu tính theo bytes Response Header • • • Một URL tài liệu với nhiều thể hiện: Ngôn ngữ, định dạnh (html, pdf), vv Ví dụ request từ client: GET http://www.myco.com/ HTTP/1.1 User-agent: Mozilla/4.5 Accept-language: en Response từ Server: HTTP/1.1 200 OK Vary: Accept-language Content-type: text/html Content-language: en Cookies • Là đoạn liệu nhỏ trao đổi thành phần tham gia truyền thông gồm thông tin tên máy chủ, thông tin điều khiển, nhãn thời gian vv thông tin lưu phía client • Cookie thường dùng để lưu giữ trạng thái cho giao thức HTTP • Nó dùng để lưu trữ thông tin người dùng sử dụng ứng dụng liệu khác session • HTTP Cookies Set-Cookie: NAME=VALUE; expires=DATE; Cookie: NAME1=OPAQUE_STRING1; Các thuộc tính Cookie • Tên-name • Giá trị-value • Thời gian hết hạn cookie • Đường dẫn cookie hợp lệ • Miền mà cookie hợp lệ • Vv Các thao tác Cookies • Thiết lập lại cookie – Có thiết lập giá trị NULL – Thiết lập thời gian hết hạn • Kiểm tra xem cookie có chấp nhận Ví dụ cookie GET /anything.html Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; expires=Wednesday, 09-Nov-99 23:12:40 GMT GET /index2.html Cookie: CUSTOMER=WILE_E_COYOT Set-Cookie: SHIPPING=FEDEX; path=/foo GET /foo/index2.html Cookie: CUSTOMER=WILE_E_COYOTE; SHIPPING=FEDEX Client Server Xác thực HTTP xây dựng sẵn chế xác thực ⇒ GET /index.html HTTP/1.0 ⇐ WWW-Authenticate realm: ⇒ GET Authorization J987kl8SAl ⇐ 401 HTTP/1.0 Unauthorized user:password ⇒ (Base64) ⇒ J987kl8SAl MIME MEDIA TYPES • • HTTP gửi dạng file media sử dụng Content-type: Header Một số dạng file media tiêu biểu: – – – – – – text/plain, text/html image/gif, image/jpeg audio/basic, audio/wav model/vrml video/mpeg, video/quicktime application/*, application-specific liệu không thuộc dạng file media ví dụ application/octet-stream MIME-Multipurpose Internet Mail Extensions • • • Các thư điện tử truyền thống sử dụng ký tự ASCII, độ dài dòng kích thước bị hạn chế MIME chuẩn Internet đời phục vụ cho thư điện tử: MIME mở rộng khả thư điện tử gồm: – – – – – – Độ dài dòng toàn thư không bị hạn chế Nhiều đối tượng( ảnh, âm thanh, vv ) gửi kèm với thư Thư file máy chủ khác tự động lấy Sử dụng ký tự mở rộng phát triển từ US-ASCII Định dạng chữ với nhiều kiểu font khác Thư hình ảnh, đoạn video, âm vv [...]... hoàn tất, web server ghi vào file nhật ký mô tả giao dịch vừa thực hiện Web Proxy • Mục đích của Proxy: – Tiết kiệm, nâng cao hiệu xuất, tăng cường an ninh • Proxy quản lý và can thiệp được vào các kết nối Web Proxy • Web Proxy Server có vai trò trung gian chuyển tiếp các giao dịch giữa Client và Web Server, nếu không có web proxy thì client và Server thì sẽ giao dịch trực tiếp với nhau Web Proxy... ký của webserver • Mục đích: Kiểm tra các vấn đề trên server hoặc proxy (ví dụ: xem có request nào bị lỗi) và tạo ra thống kê về lượng truy cập ứng dụng web từ đó xác định lượng Server, băng thông, cần thiết cho ứng dụng web ngoài ra còn hữu ích cho nhiều vấn đề khác • Các giá trị thường được ghi lại: – – – – – – – HTTP method (PUT, GET, POST, vv ) Phiên bản giao thức HTTP của cả client và Server URL... Mirrored Server Farms Đảm bảo an toàn web hosting • Sử dụng mạng phân bổ nội dung (Content Distribution Networks) – Mục đích làm giảm tải server, tăng hiệu suất mạng – Nội dung được lưu trên các node mạng, các node có thể là web server, proxy, surrogates Redirection và Loadbalancing • Redirection là kỹ thuật sử dụng phổ biến hiện nay bởi vì ứng dụng web luôn luôn phải: – Thực hiện các giao dịch HTTP an... có thể duyệt web sử dụng giao thức HTTP bình thường, nhưng gateway sẽ tự động mã hóa phiên làm việc của người dùng Gateway Security • Gateway có thể đứng trước webserver để nhận các request đã được mã hóa từ client, sau đó giải mã và gửi đến cho webserver xử lý: Proxy và gateway Proxy kết nối ứng dụng có giao thức giống nhau, gateway có thể kết nối các ứng dụng các giao thức khác nhau Web Hosting •...Các công việc thực hiện phía Server 5 Tạo ra HTTP response với các kết quả theo yêu cầu của client – Khi web server định danh được tài nguyên, nó thực hiện hành động chỉ ra trong request method (PUT, GET, DELETE, vv…) và tạo ra response cho client Response gồm có: mã trạng thái, header, nội dung Các công việc thực hiện phía Server 6 Gửi response cho client – Server cần lưu lại toàn bộ trạng thái... máy chủ để đặt ứng dụng web Web Hosting • Virtual Hosting (Shared Hosting) – Đặt nhiều ứng dụng web trên cùng một máy chủ – Các loại Virtual Hosting • • • • Virtual hosting by URL path Virtual hosting by port number Virtual hosting by IP address Virtual hosting by Host header Đảm bảo an toàn web hosting • Các vấn đề thường gặp ảnh hưởng đến sự hoạt động của ứng dụng web: – – – – Server hỏng Quá tải bằng... hiệu xuất Web Cache • Mục tiêu: – Giảm tải cho server – Nâng cao hiệu năng hiệu năng hệ thống mạng • Giải pháp: – Giải pháp thực hiện là làm lưu lại nội dung của web server được truy cập, những yêu cầu đến nội dung đến Cache, Hits và miss • Những request đến cache mà được response ngay từ bản copy đã có trên cache thì được gọi là Cache hit • Những request đến cache sau đó được chuyển tiếp đến Server do... (redirection) – HTTP redirection – DNS redirection – IP MAC forwarding – IP Address Forwarding Redirection và Loadbalancing • HTTP Redirection Redirection và Loadbalancing • DNS redirection Redirection và Loadbalancing • DNS Redirection – DNS Round Robin • Là một trong những kỹ thuật chuyển hướng đơn giản nhất, DNS round robin sử dụng phân giải tên máy chủ để cân bằng tải giữa các Server Redirection... mạng • Chính vì vậy, nội dung web thường được phân bổ ở nhiều nơi, nếu nơi này bị lỗi thì nơi khác sẽ phục vụ • Ngoài ra nó làm cho việc truy cập nhanh hơn vì người dùng có thể truy cập những tài nguyên tương tự nhưng ở máy chủ gần mình hơn và như vậy sẽ nhanh hơn là truy cập đến một máy chủ ở xa Redirection và Loadbalancing • Server, Proxy, cache, và gateway đóng vai trò như server và sự chuyển hướng... Cache đọc các request đến từ các client 2.Phân tách-Cache phân tách thông điệp, trích ra URL và các header 3.Lookup-Cache kiểm tra nếu như bản copy đã có sẵn hay chưa, nếu chưa có thì lấy thông tin về Server về và lưu lại 4.Kiểm tra xem nội dung bản copy có thay đổi gì không (fresh check)- nếu có sẽ lấy bản mới về 5.Tạo Response- Cache tạo một response với các header mới và nội dung cache 6.Gửi-Cache ... gian chuyển tiếp giao dịch Client Web Server, web proxy client Server giao dịch trực tiếp với Web Proxy Nâng cao hiệu xuất Web Cache • Mục tiêu: – Giảm tải cho server – Nâng cao hiệu hiệu hệ thống... vào tài nguyên request Web Server hỗ trợ nhiều dạng ánh xạ tài nguyên dạng đơn giản sử dụng request URI để đến tài nguyên webserver Các công việc thực phía Server Tạo HTTP response với kết theo... hình tương tác WebServer Client Client Server machine Requests HTTP server Browser Responses Client Browser HTML documents CGI scripts ASP, PHP, JSP vv Các bước truyền thông Client Server Các công

Ngày đăng: 22/12/2016, 13:16

Từ khóa liên quan

Mục lục

  • Slide 1

  • Web Server & Các vấn đề liên quan

  • Vai trò của web server

  • Các loại web server

  • Mô hình tương tác giữa WebServer và Client

  • Các bước truyền thông giữa Client và Server

  • Các công việc thực hiện phía Server

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Slide 12

  • Web Proxy

  • Slide 14

  • Slide 15

  • Web Cache

  • Cache, Hits và miss

  • Slide 18

  • Các bước cache

  • Slide 20

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan