Giao diện cổng thông dụng là gì: Làm việc và các ứng dụng của nó

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Bạn có muốn biết làm thế nào mà các trình duyệt lấy thông tin cho chúng tôi nhanh chóng và tức thì? Dưới đây là bài viết giải thích hoạt động của CGI, ưu điểm và nhược điểm. Giao diện cổng chung (CGI) là một tập hợp các tiêu chuẩn được sử dụng để chạy các tập lệnh và chương trình trên máy chủ web. Vì CGI là một giao diện tiêu chuẩn, các thông tin liên lạc giữa máy chủ web và trình duyệt web của khách hàng tuân theo các quy tắc cụ thể. Nói cách khác, Giao diện Cổng chung hoạt động như một phần mềm trung gian giữa các máy chủ WWW với cơ sở dữ liệu và nguồn thông tin bên ngoài. CGI được mô tả bởi tập đoàn WWW, cũng mô tả cách chương trình tương tác với máy chủ Giao thức truyền siêu văn bản (HTTP). Các tập lệnh được viết bằng PHP và ASP và được xử lý trên máy chủ web trước khi trang được tải và kết quả được gửi đến trình duyệt của khách hàng.

Giao diện cổng chung là gì?

Giao diện cổng chung (CGI) được mô tả như một tập hợp các quy tắc để trao đổi thông tin giữa một trang web người phục vụ và một tập lệnh tùy chỉnh. CGI là một trong những cách phổ biến nhất để máy chủ web tương tác với người dùng bằng cách gửi dữ liệu. Các ngôn ngữ lập trình được sử dụng có thể là C, C ++, Java, Perl, Python hoặc VB (Visual Basic).




Một số trang HTML bao gồm các biểu mẫu, sử dụng các chương trình CGI để xử lý dữ liệu có sẵn trong các biểu mẫu. Tập lệnh hoặc chương trình được coi là một phương pháp thay thế được sử dụng để cung cấp phản hồi cho người dùng web, trong khi các tập lệnh hoặc chương trình này hoạt động từ máy của người dùng thay vì máy chủ Web và sử dụng các chương trình như Java Scripts, Java applet hoặc điều khiển ActiveX. Nói chung, các công nghệ khác nhau này được gọi là các giải pháp phía máy khách và việc sử dụng CGI được gọi là các giải pháp phía máy chủ vì quá trình xử lý là từ máy chủ web.

Cách thức hoạt động của giao diện cổng chung

Sơ đồ cổng chung sau đây giúp hiểu cách CGI hoạt động khi người dùng nhấp vào siêu liên kết để tìm kiếm và duyệt qua bất kỳ trang web nào. Trình duyệt web hoạt động trên máy khách sử dụng Giao thức truyền siêu văn bản (HTTP) để trao đổi thông tin với máy chủ web. Chương trình CGI nằm trên cùng một hệ thống có máy chủ web và chúng hoạt động từ cùng một hệ thống.



Common-gateway-interface-working

common-gateway-interface-working

Dựa trên loại yêu cầu nhận được từ trình duyệt, máy chủ web cố gắng cung cấp tài liệu từ hệ thống tệp tài liệu của nó hoặc chạy chương trình CGI. Sau đây là một loạt các sự kiện để tạo tài liệu HTML sử dụng tập lệnh CGI:

  • Người dùng yêu cầu máy chủ web HTTP và yêu cầu URL. Người dùng cũng có thể nhập URL vào cửa sổ vị trí của trình duyệt, có thể là siêu liên kết hoặc được chỉ định dưới dạng thẻ HTML.
  • Máy chủ web sẽ phân tích URL và tìm kiếm tên tệp. Nếu không, nó sẽ kích hoạt chương trình cổng được đề cập trong URL và gửi các tham số đến chương trình qua URL
  • Cổng giao diện Common Gateway xử lý thông tin cần thiết và gửi văn bản tệp / HTML đến máy chủ web. Ngoài ra, máy chủ gắn tiêu đề MIME và gửi văn bản HTML đến trình duyệt.
  • Lấy kết quả từ máy chủ web, trình duyệt web hiển thị tài liệu đã nhận hoặc thông báo lỗi.
    Đặc điểm của CGI
  • CGI được sử dụng để tạo các tập lệnh shell đơn giản và ứng dụng tương tác
  • Chúng được xác định rõ ràng với một bộ quy tắc
  • CGI được viết bằng các ngôn ngữ lập trình đơn giản như Perl, C
  • CGI là một công nghệ dễ dàng giao tiếp với HTML.
  • CGI tương thích cao với các trình duyệt hiện có.

Ưu điểm

  • Ngôn ngữ giao diện cổng chung phải tuân theo các thông số kỹ thuật và do đó có thể được viết bằng bất kỳ ngôn ngữ lập trình nào.
  • CGI cho phép chúng tôi sử dụng mã đã được tạo và người dùng có thể tránh viết lại mã của chính họ.
  • Nó đơn giản và an toàn vì các ứng dụng hoạt động trên máy chủ.
  • Các chức năng nâng cao dễ dàng hơn rất nhiều nếu được thực hiện trong CGI so với trong Java.
  • Nó là nhanh chóng để đáp ứng.

Nhược điểm

  • Giao diện cổng chung tiêu tốn nhiều thời gian xử lý
  • CGI gánh chịu chi phí khi HTTP vẫn là một giao thức không trạng thái
  • Nó bao gồm một cơ sở mã hiện có rất nhiều, chủ yếu ở Perl
  • Mỗi khi tập lệnh CGI được thực thi, quá trình lại bắt đầu
  • Giảm hoạt động của máy chủ

Các ứng dụng của giao diện cổng chung

CGI chuyển đổi Web từ việc thu thập dữ liệu tĩnh thành một cấu trúc tương tác mới, trong đó người dùng có thể tương tác với số lượng câu hỏi để chạy ứng dụng. Một số ứng dụng được thiết kế bằng CGI là:


Các hình thức

Biểu mẫu là một trong những người dùng quan trọng nhất của CGI. Biểu mẫu cho phép người dùng chia sẻ thông tin và là một tập hợp con của HTML. Chương trình CGI làm cho các biểu mẫu này rất tương tác cho cả người dùng và nhà cung cấp bằng cách xử lý và chọn các biểu mẫu phù hợp phù hợp với tiêu chí lựa chọn.

Cổng vào

Cổng web là các chương trình hoặc tập lệnh giống nhau. Nó được sử dụng để truy cập thông tin cần thiết mà máy khách không thể đọc trực tiếp từ cơ sở dữ liệu. Chương trình CGI được sử dụng để phục vụ như một cổng vào và sử dụng ngôn ngữ lập trình thích hợp để đọc thông tin, định dạng và chia sẻ thông tin đó với khách hàng.

Tài liệu ảo

Tạo tài liệu ảo là phần quan trọng nhất của CGI. Trong khi ảo tài liệu được tạo theo yêu cầu của người dùng, nó có thể thay đổi từ HTML ảo, hình ảnh, văn bản thuần túy đôi khi là âm thanh.

Các ứng dụng làm việc của giao diện cổng chung

Một số chương trình CGI ấn tượng trên web mô tả các khía cạnh mạnh mẽ của CGI được liệt kê dưới đây.

Lycos World Wide Web Tìm kiếm

Máy chủ này giúp người dùng duyệt các tài liệu cụ thể. Để đáp ứng yêu cầu của người dùng, Lycos trả về tài liệu siêu văn bản phù hợp với tiêu chí tìm kiếm trên Web của người dùng. Các liên kết là www.lycos.com.

Sách tô màu

Ứng dụng tuyệt vời được thiết kế cho người dùng thích tô màu. Liên kết là www.ravenna.com/coloring.

Từ điển tiếng Nhật sang tiếng Anh

Nó là một ứng dụng dựa trên tài liệu ảo. Chương trình CGI tiên tiến yêu cầu một từ tiếng Anh từ người dùng và trả về một từ tiếng Nhật tương đương với hình ảnh thích hợp.

Lưu bút với Bản đồ Thế giới

Nó sử dụng một ứng dụng dựa trên biểu mẫu, cho phép người dùng để lại tin nhắn được mọi người đọc.

Mối quan tâm về bảo mật của giao diện cổng chung

Tập lệnh CGI được triển khai trên trình duyệt của người dùng có thể chứa lỗi. Mỗi lỗi là khả năng tạo ra Bảo vệ các vấn đề. Các vấn đề bảo mật có thể có của tập lệnh CGI được trình bày theo hai cách:

  • Rò rỉ thông tin cố ý hoặc vô ý liên quan đến hệ thống máy chủ giúp hacker dễ dàng đột nhập
  • Các tập lệnh CGI xử lý đầu vào của người dùng từ xa có thể dễ bị tấn công trong đó người dùng từ xa làm họ chậm thực hiện lệnh

Câu hỏi thường gặp

1). Xác định giao diện cổng chung.

Giao diện cổng chung (CGI) được mô tả như một tập hợp các quy tắc để trao đổi thông tin giữa máy chủ web và tập lệnh tùy chỉnh

2). Kể tên một số ngôn ngữ lập trình được CGI hỗ trợ

C, C ++, Java, Perl, Python hoặc VB (Visual Basic)

3). Cung cấp một tính năng của CGI

Nó được sử dụng để tạo các tập lệnh shell đơn giản và ứng dụng tương tác

4. Đưa ra một ưu điểm và nhược điểm của CGI

Lợi thế - CGI cho phép sử dụng mã đã tạo và người dùng có thể tránh viết lại mã của chính mình

Bất lợi - Giảm hoạt động của máy chủ và tiêu tốn nhiều thời gian xử lý

5). Các hình thức của CGI là gì?

Biểu mẫu là một tập hợp con của HTML và được sử dụng để thu thập dữ liệu và giao tiếp tương tác

6). Chi phí CGI là gì?

CGI phải chịu chi phí khi HTTP trở thành một giao thức không trạng thái. Điều này có nghĩa là quy trình CGI được khởi tạo cho mọi 'lần truy cập' trên trình duyệt.

7). Tại sao Perl được nhiều người sử dụng cho CGI?

Perl là một công cụ dễ sử dụng. Nó có các tính năng mạnh mẽ để trích xuất thông tin từ các tệp văn bản, quét các tệp văn bản tùy ý và in các báo cáo dựa trên thông tin đó.

Trong bài viết này, chúng tôi đã giải thích định nghĩa về Giao diện cổng chung. Ngoài ra, chúng tôi đã thảo luận chi tiết về nguyên lý hoạt động của giao diện cổng thông dụng, ưu điểm và nhược điểm, cách sử dụng, hoạt động ứng dụng của CGI trên toàn cầu và các mối đe dọa bảo mật có thể xảy ra.