1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng lập trình WEB

153 2 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 153
Dung lượng 3,53 MB

Nội dung

Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB Bài giảng lập trình WEB GIỚI THIỆU Tổng quan về Web Phân loại trang web  Trang web tĩnh  Là trang được lưu trữ sẵn trên server  Khi có yêu cầu từ phía client, trang này sẽ được tải về và hiển thị trên browser  Trang web.

Tổng quan Web Phân loại trang web  Trang web tĩnh:  Là trang lưu trữ sẵn server  Khi có u cầu từ phía client, trang tải hiển thị browser  Trang web động:  Là chương trình thực server  Kết chương trình trang web tĩnh HTML gửi client Phân loại trang web  Trang web có nhúng Applet Script:  Là trang HTML có nhúng câu lệnh script applet :JavaScript , VBScript , Perl  Các applet script thực bên phía client Mơ hình web tĩnh Mơ hình Web động Ngơn ngữ phía Server PHP  ASP, ASP.NET  Perl  J2EE  Python (Django)  Ruby (Ruby on Rails)  ColdFusion  ASP.NET  Ví dụ đoạn code Perl Được sử dụng nhiều lập trình web trước  Hiện tập trung vào ứng dụng xử lý văn  Ví dụ đoạn code (phá mã hóa DVD)  Ruby Ngơn ngữ hướng đối tượng, thực thi nhanh  Ví dụ đoạn code   Các web server mặc định thường khơng hỗ trợ Ruby, phải cấu hình thêm sử dụng Python Ngôn ngữ hướng đối tượng, dễ sử dụng (đặc biệt Linux)  Ví dụ đoạn code:  Tăng tốc website  Giảm bớt request  Thiết kế đơn giản: sử dụng lượng vừa phải hình ảnh, flash, script, … website  Gom file CSS, JavaScript lại với  Sử dụng CSS sprites (gom nhiều ảnh lại với thành một) • Nên gom ảnh nhỏ thành cột dọc, để xác định tọa độ cho dễ • (http://www.csssprites.com, http://spritegen.com)  Sử dụng Image Maps: Gom ảnh nhỏ thành ảnh lớn Tăng tốc website  Sử dụng Content Delivery Network (CDN)  Đặt website vùng địa lý mà phần lớn người dùng website bạn  Sử dụng CDN hoạt động • Ví dụ Google lưu trữ framework jQuery, prototype, MooTools, Dojo, script.aculo.us hệ thống server Tăng tốc website  VD sử dụng jQuery CDN  VD sử dụng Bootstrap CDN Tăng tốc website Nén HTML với gzip: đa số trình duyệt có khả giải nén trang html  Các cách để nén với thư viện zlib compress php  php_flag zlib.output_compression On // htaccess zlib.output_compression = On // php.ini  Hoặc đặt lệnh sau đầu trang ini_set(“zlib.output_compression”, “On”) ob_start('ob_gzhandler') 11 Tăng tốc website  Cache client: có hai cách thức điều khiển cache client thông qua http header: expire cache-control  Expire $offset = 3600 * 24; $expire = "Expires: " gmdate("D, d M Y H:i:s", time() + $offset) " GMT"; header($expire);  Cache-Control $expire = "Cache-Control: max-age=3600, must-revalidate"; header($expire); 12 Tăng tốc website  Tối ưu truy vấn sql  Giảm join bảng  Index hợp lý field  Chấp nhận liệu dư thừa để tăng tốc độ xử lý  Tuyệt đối không dùng SELECT *, select field cần dùng 13 Tăng tốc website  PHP Cache  Opcode: code trang PHP dịch xong lưu share memory để dùng lại mà thơng dịch lệnh file có request Có nhiều giải pháp APC, XCache, eAccelerator  File caching: Nội dung file lưu nơi sau kết xuất lần Với request đến sau, đọc file kết trả 14 Tăng tốc website  PHP Cache  Memory cache • Những liệu riêng user, lưu vào session để dùng username, họ tên, email, giới tính… • Những liệu kết xuất lần đầu tiên, thay lưu file cache, bạn lưu table để dùng lại 15 Bảo mật website Bảo mật website  Bảo Mật Session:  Khi hàm session_start() gọi, session tạo  Sau php send header để tạo cookie tên PHPSESSID có giá trị sessionid  Mỗi lần request, sessionid gửi lại server  Nếu user A lấy sessionid user B login, coi A login với tư cách B Click here 17 Bảo mật website  Bảo Mật Session:  Giải pháp: • Gọi lại hàm session_regenerate_id() để sinh sessionid • Hoặc lưu thêm số thông tin user vào session, kiểm tra lại 18 Bảo mật website  Chống SQL Injection (Database Security)  Khi login với username a' or 1=1 limit 0,1 # password 123 câu lệnh trở thành SELECT * FROM user WHERE username = 'a' OR = limit 0,1 # Password=123  có liệu, từ dấu # trở sau bị bỏ qua (nghĩa MySql không quan tâm # Password=123 ) 19 Bảo mật website  Chống SQL Injection  Giải pháp: • Bảo vệ câu lệnh SQL cách kiểm soát chặt chẽ tất liệu nhập nhận từ người dùng • Trong file php.ini cấu hình magic_quotes_gpc = On 20 Bảo mật website  SSL mã hóa liệu  SSL giao thức web dùng để thiết lập bảo mật webserver client  Tất liệu truyền mã hóa  Với SSL, browser server kiểm tra tính hợp lệ lẫn nhau, sau mã hóa liệu truyền  Cấu hình webserver hỗ trợ (httpd.conf) • LoadModule ssl_module modules/mod_ssl.so  Các website lớn dùng SSL Certificates (free thương mại) để xác thực 21 Bảo mật website  Chống công DDos (Distributed Denial of Service)  Chống iframe (mượn website để chuyển công) if (top.location != self.location) {top.location = self.location}  Thiết lập file htaccess  Giới hạn số kết nối website thời điểm  Sử dụng captcha image 22 ... nghệ Web Web 1.0 Web 2.0 Web 3.0 Các loại Web Complexity Semantic Web Social Web Workflow Based Interactive, Transactional Portal Oriented Doc-Centric Development History Document-Centric Websites... nghệ Web Công nghệ Web Công nghệ Web: tập hợp cơng nghệ dùng để phân tích, thiết kế, thực hiện, kiểm thử, vận hành bảo trì ứng dụng Web với chất lượng cao  Ứng dụng Web: ứng dụng chạy web ... trang web  Trang web tĩnh:  Là trang lưu trữ sẵn server  Khi có yêu cầu từ phía client, trang tải hiển thị browser  Trang web động:  Là chương trình thực server  Kết chương trình trang web

Ngày đăng: 20/12/2022, 19:05

w