Giải Mã Các Kiến Thức Vể CGI Trong Lập Trình Với Python
- Khái niệm chung về CGI trong Python
- Thiết lập CGI trong Python
- Sơ đồ kiến trúc CGI trong Python
- Cấu trúc chương trình CGI trong Python
- Chương trình CGI đầu tiên
- Sử dụng mô đun CGI trong Python
- Tiêu đề HTTP sử dụng trong CGI
- Môi trường biến CGI trong Python
Khái niệm chung về CGI trong Python
CGI là một tập hợp các tiêu chuẩn xác định cách thức tiêu chuẩn để truyền thông tin hoặc yêu cầu của người dùng web đến một chương trình ứng dụng và lấy lại dữ liệu để chuyển tiếp nó cho người dùng. Nó là sự trao đổi thông tin giữa máy chủ web và một tập lệnh tùy chỉnh.
Khái niệm chung về CGI trong Python
Khi người dùng yêu cầu trang web, máy chủ sẽ gửi trang web được yêu cầu. Máy chủ web thường chuyển thông tin đến tất cả các chương trình ứng dụng xử lý dữ liệu và gửi lại một thông báo được xác nhận; kỹ thuật truyền dữ liệu qua lại giữa máy chủ và ứng dụng này là Common Gateway Interface. Phiên bản hiện tại của CGI là CGI / 1.1 & CGI / 1.2 đang được xử lý.
Thiết lập CGI trong Python
Các bước thiết lập CGI như sau:
Bước 1: Tìm hiểu người dùng nào đang chạy máy chủ Web
Bước 2: Kiểm tra cấu hình máy chủ để xem liệu bạn có thể chạy các tập lệnh trong một thư mục cụ thể hay không
Bước 3: Kiểm tra quyền của tệp
Bước 4: Đảm bảo rõ ràng rằng các tập lệnh bạn đã tạo có thể đọc được và thực thi được bởi người dùng máy chủ web
Bước 5: Đảm bảo dòng đầu tiên của Python-Script đề cập đến một máy chủ web mà trình thông dịch có thể chạy
Sơ đồ kiến trúc CGI trong Python
Cấu trúc chương trình CGI trong Python
Đầu ra của tập lệnh Python CGI phải bao gồm hai phần được phân tách bằng một dòng trống. Phần đầu tiên chứa số lượng tiêu đề mô tả máy khách loại dữ liệu đang theo sau.
Ví dụ:
print ("Content-Type : text/html") # then comes the rest hyper-text documents print ("<html>") print ("<head>") print ("<title>My First CGI-Program </title>") print ("<head>") print ("<body>") print ("<h3>This is HTML's Body section </h3>") print ("</body>") print ("</html>") Output This is HTML's Body section>>> Đọc thêm: Self trong Python - Bật mý lý do cần sử dụng self trong Python
Chương trình CGI đầu tiên
Dưới đây là một liên kết đơn giản, chúng được link tới một CGI script là hello.py. File này được lưu trong /var/www/cgi-bin và có nội dung như dưới. Trước khi chạy chương trình CGI, sử dụng câu lệnh chmod 755 hello.py để file được đổi sang mod có thể thực thi được
#!/usr/bin/python print "Content-type:text/html\r\n\r\n" print '<html>' print '<head>' print '<title>Hello Word - First CGI Program</title>' print '</head>' print '<body>' print '<h2>Hello Word! This is my first CGI program</h2>' print '</body>' print '</html>'Nếu click hello.py sau đó nó sẽ ra kết quả như hình dưới đây
Đoạn mã trong file hello.py là đoạn code đơn giản của Python, output viết trên file STDOUT file. Có một tính năng quan trọng và là tính năng có sẵn, ở đây là dòng đầu tiên được in ra Content-type:text/html\r\n\r\n. Dòng này được gửi ngược lại cho trình duyệt để hiển thị trên màn hình trình duyệt.
Đến thời điểm hiện tại phải hiểu được cơ bản về khái niệm của CGI và có thể viết nhiều chương trình CGI phức tạp sử dụng Python. Đoạn script có thể tương thích với bất kỳ hệ thống bên ngoài nào khác cũng như trao đổi thông tin như là RDBMS
Sử dụng mô đun CGI trong Python
Nếu lập trình viên viết tập lệnh CGI trong Python, dòng sau có thể dễ dàng được thêm:
import cgitb cgitb.enable()Đoạn mã trên kích hoạt một trình xử lý ngoại lệ đặc biệt sẽ hiển thị một báo cáo chi tiết trong trình duyệt web trong trường hợp xảy ra bất kỳ lỗi nào.
>>> Đọc thêm: Đa xử lý trong PHP - Cách tốt nhất để thực hiện đa xử lý
Tiêu đề HTTP sử dụng trong CGI
Rất ít danh sách quan trọng của các tiêu đề HTTP thường được sử dụng trong các chương trình CGI. Đó là:
Tiêu đề HTTP | Giá trị |
Loại nội dung | text / html |
Hết hạn | Ngày |
Vị trí | URL |
Set-Cookie | Chuỗi |
Thời lượng nội dung | N |
Môi trường biến CGI trong Python
Các chương trình CGI đều có thể dễ dàng truy cập các môi trường biên sau đây:
STT | Tên biến | Mô tả |
1 | CONTENT_TYPE | Kiểu dữ liệu của nội dung. Được sử dụng khi client gửi nội dung đính kèm tới server. Ví dụ như upload file |
2 | CONTENT_LENGTH | Độ dài của thông tin truy vấn. Nó chỉ có sẵn cho request với phương thức POST |
3 | HTTP_COOKIE | Trả về tập các cookie dưới dạng key value |
4 | HTTP_USER_AGENT | User-Agent yêu cầu trường header chứa thông tin về user agent xuất phát từ request. Nó là tên của trình duyệt web |
5 | PATH_INFO | Đường dẫn của CGI script |
6 | REMOTE_ADDR | Địa chỉ IP của máy chủ từ xa thực hiện yêu cầu. Nó là đăng nhập tin cậy hoặc xác thực |
7 | REQUEST_METHOD | Phương thức thực hiện request. Phổ biến nhất là GET và POST |
8 | SERVER_SOFTWARE | Tên của version mà phần mềm của server đang chạy |
Kết luận: Bài viết trên đã giới thiệu tới bạn về CGI trong Python và một số kiến thức liên quan đến CGI. Hy vọng bạn có thể sử dụng các kiến thức này trong quá trình làm việc với CGI trong Python. Tìm hiểu các kiến thức về lập trình Python và các ngôn ngữ lập trình khác các khóa học lập trình tại Viện công nghệ thông tin T3H.
Từ khóa » File đuôi Cgi Là Gì
-
Common Gateway Interface (CGI) Là Gì?
-
CGI Là File Gì? Phần Mềm & Cách Mở File . CGI, Sửa File Lỗi
-
CGI Là File Gì? Cách Mở File .CGI - Từ điển Số
-
CGI Là Gì? Cách Thức Hoạt động Của CGI Như Thế Nào?
-
CGI Đuôi Tập Tin - Driversol
-
CGI Là Gì? Khám Phá Common Gateway Interface - Wiki Máy Tính
-
CGI Trong Lập Trình Web Là Gì ? | Skinmash
-
Python - CGI Programming - Viblo
-
CGI Là Gì ? - Hải Sản Cà Mau
-
Lập Trình CGI Trong Python - Hoclaptrinh
-
CGI Là Gì, Giải Thích ý Nghĩa CGI Viết Tắt Của Từ Gì Và Công Nghệ CGI
-
CGI Là Gì? Giấc Mơ Nhà Làm Phim Hay Cơn "ác Mộng" ảo - Digitalfuture
-
CGI Là Gì? Tìm Hiểu Kỹ Hơn Về Công Nghệ CGI Trong điện ảnh
-
Phân Biệt Php CGI,SuPHP,FastCGI PHP Handler ?