Tải bản đầy đủ - 0 (trang)
3 Tổng quan về WEBSERVER

3 Tổng quan về WEBSERVER

Tải bản đầy đủ - 0trang

2.3.2 Tìm hiểu sâu hơn



Như đã nói, để lấy một trang web, trình duyệt của bạn gửi một request tới web

server, nó sẽ tìm kiếm file được u cầu được lưu trữ trên ổ đĩa của nó. Khi tìm thấy

file, server đọc nó, xử lý nếu cần, và gửi nó tới trình duyệt.





Lưu trữ các file (Hosting files)



Đầu tiên, một web server phải lưu trữ các file của website, đó là các tài liệu

HTML và các tài nguyên liên quan đến nó, bao gồm các ảnh, file CSS, file JavaScript,

fonts và videos.





Giao tiếp thông qua HTTP



Thứ hai, một web server hỗ trợ HTTP (Giao thức truyền phát siêu văn bản Hypertext Transfer Protocol). Như tên gọi, HTTP là cách truyền các siêu văn bản hypertext (ví dụ: các tài liệu web) giữa hai máy tính.

Một giao thức là một tập hợp các quy tắc để kết nối giữa hai máy tính. HTTP là

một giao thức textual, stateless.





Textual



Tất cả các lệnh là văn bản thuần túy (plain-text) và con người có thể đọc được.





Stateless



Cả server và client không nhớ kết nối trước đó. Ví dụ, nếu chỉ có HTTP, một

server khơng thể nhớ mật khẩu bạn đã nhập hoặc bước nào bạn đã làm trong một giao

dịch. Bạn cần một application server cho những nhiệm vụ như vậy. (Chúng tôi sẽ đề

cập đến công nghệ này trong một bài viết khác).

HTTP cung cấp các quy tắc rõ ràng, về cách một client và server giao tiếp với

nhau.

Chỉ client có thể tạo các HTTP request tới các server. Các server chỉ có thể đáp

trả HTTP request của client.

Khi yêu cầu một file thông qua HTTP, client phải cung cấp URL của file.

Web server phải trả lời mọi HTTP request, ít nhất với một thông điệp lỗi (error

message).

Trên một web server, HTTP server chịu trách nhiệm xử lý và trả lời các request

đến.

25



Khi nhận một request, một HTTP server sẽ kiểm tra xem URL được yêu cầu có

khớp với một file hiện có khơng.

Nếu có, web server gửi nội dung file trả lại trình duyệt. Nếu khơng, một

application server sẽ tạo ra file cần thiết.

Nếu không thể xử lý, web server trả lại một thơng điệp lỗi cho trình duyệt, phổ

biến nhất là "404 Not Found".





Nội dung static và dynamic



Nói chung, một server có thể phục vụ cả nội dung static hoặc dynamic. "Static"

có nghĩa là "được phục vụ nguyên vẹn" (served as-is). Các static website là dễ dàng

nhất để thiết lập, vì thế chúng tôi gợi ý bạn tạo một static site trước tiên.

"Dynamic" có nghĩa là server xử lý nội dung hoặc thậm chí tạo ra chúng với dữ

liệu từ database. Giải pháp này linh hoạt hơn, nhưng stack kỹ thuật trở lên khó khăn

hơn để xử lý, làm cho việc xây dựng website trở lên phức tạp hơn.

Một trang web được cấu tạo bởi các yếu tố sau:

- HTML – Xây dựng cấu trúc và định dạng các siêu văn bản.

- CSS – Định dạng các siêu văn bản dạng thơ tạo ra từ HTML thành một bố



cục website, có màu sắc, ảnh nền,….

- Javascript – Tạo ra các sự kiện tương tác với hành vi của người dùng (ví

dụ nhấp vào ảnh trên nó sẽ có hiệu ứng phóng to).

- PHP – Ngơn ngữ lập trình để xử lý và trao đổi dữ liệu giữa máy chủ đến

trình duyệt (ví dụ như các bài viết sẽ được lưu trong máy chủ).

- MySQL – Hệ quản trị cơ sở dữ liệu truy vấn có cấu trúc (SQL – ví dụ như

các bài viết sẽ được lưu lại với dạng dữ liệu SQL).

2.3.3 Phần mền hỗ trợ viết web XAMPP

XAMPP là một chương trình tạo máy chủ web (Web Server) được tích hợp sẵn

Apache, PHP, MySQL, FTP Server, Mail Server và các cơng cụ như phpMyAdmin.

Với chương trình quản lý tiện dụng, cho phép chủ động bật tắt hoặc khởi động lại dịch

vụ máy chủ bất cứ lúc nào.



26



Hình 2.8: Giao diện của Xampp Control Panel v3.2.2.

XAMPP cung cấp cho người lập trình một cách thức dễ dàng , thoải mái để kiểm

tra các web động mà không cần truy cập vào Internet.

Với XAMPP cho Windows bạn có thể quản lý cơ sở dữ liệu MySQL và SQLite,

tạo ra một máy chủ từ xa bằng cách sử dụng máy chủ FileZilla FTP (cũng bao gồm

trong ứng dụng). Điều này rất hữu ích cho việc quản trị các CMS lớn.

Đặc biệt, Xampp có giao diện quản lý khá tiện lợi, cho phép người dùng chủ

động bật tắt hoặc khởi động lại các dịch vụ máy chủ bất kỳ lúc nào. Phần mềm này

cũng được thiết lập và phát triển dựa trên mã nguồn mở.

2.3.4



Phần mềm hỗ trợ lập trình web Sublime Text



Sublime text do Jon Skinner tạo ra vào tháng 1 năm 2008, được viết dựa trên

ngơn ngữ lập trình Python và C++, có thể được sử dụng trên nhiều nền tảng hệ điều

hành khác nhau như Windows, Mac. Đây là một editor mới mẻ, rất nhẹ, khởi động

nhanh, có nhiều plugin hỗ trợ, giao diện đơn giản, dễ sử dụng, tốn ít tài nguyên vận

hành, vô cùng mạnh mẽ và miễn phí.



27



Hình 2.9: Giao điện làm việc của sublime text3.

Sublime Text khác với các IDE khác ở đặc điểm nhẹ, linh hoạt trong tùy biến và

cung cấp nhiều tính năng rất tiện lợi khi lập trình.

Sublime Text có giao diện trực quan, rất bất mắt, nhiều chức năng mạnh mẽ và

có thể mở rộng thông qua PackKage Control. Hỗ trợ nhận diện và tơ màu từ khóa cho

hơn 20 ngơn ngữ khác nhau chẵng hạn như HTML, CSS, Javascript, C++, C#, SQL,

XML,....

Tính năng của Sublime Text

- Cung cấp chế độ hiển thị trực quan để tăng tính tập trung tối đa.

- Chia nhiều cửa sổ soạn thảo.

- Giao diện đơn giản, có thể cài đặt theme để phân biệt phần tử dễ hơn.

- Hỗ trợ mở file theo các tab, có thể mở nhiều file trên cùng một cửa sổ.

- Hỗ trợ Windows, Linux, Mac OS X.

- Hỗ trợ trức năng GoTo để chuyển tới một hàm được định nghĩa ở đâu đó

- Câu lệnh chuyển màu dễ ràng điều hướng.

- Sử dụng rất ít tài nguyên, nhẹ, khởi động nhanh.

- Hỗ trợ rất nhiều plug-in mạnh mẽ cho lập trình viên.

2.4 Tổng quan về một số linh kiện được sử dụng trong đề tài.

2.4.1 Arduino nano





Board Arduino Nano là một trong những phiên bản nhỏ gọn của board Arduino.



28



Hình 2.10: Vi điều khiển Arduino Nano.

Arduino Nano có đầy đủ các chức năng và chương trình có trên Arduino Uno

do cùng sử dụng MCU ATmega328P. Nhờ việc sử dụng IC dán của ATmega328P thay

vì IC chân cắm nên Arduino Nano có thêm 2 chân Analog so với Arduino Uno.

Arduino Nano được kết nối với máy tính qua cổng Mini - B USB và sử dụng chip

CH340 để chuyển đổi USB sang UART thay vì dùng chip ATmega16U2 để giả lập

cổng COM như trên Arduino Uno hay Arduino Mega



Hình 2.11: Sơ đồ chân của Arduino Nano

Bảng 2.2: Thông số Arduino Nano.

29



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

3 Tổng quan về WEBSERVER

Tải bản đầy đủ ngay(0 tr)

×