Apache HTTP Server là gì?

Article ID: 915
Cập nhật gần nhất: 22 Th02, 2022

Apache là gì?

Apache hay tên đầy đủ là Apache HTTP Server là một chương trình dành cho máy chủ đối thoại qua giao thức HTTP. Apache chạy trên các hệ điều hành tương tự Unix như Ubuntu, CentOS, Debian, cả trên Windows và một số hệ điều hành khác.

Ban đầu dựa trên máy chủ HTTPd NCSA, sự phát triển của Apache bắt đầu vào đầu năm 1995 sau khi công việc về mã NCSA bị đình trệ. Apache đóng một vai trò quan trọng trong sự phát triển ban đầu của World Wide Web, nhanh chóng vượt qua NCSA HTTPd trở thành máy chủ HTTP thống trị. Năm 2009, nó trở thành phần mềm máy chủ web đầu tiên phục vụ hơn 100 triệu trang web.

Tính đến tháng 1 năm 2021, Netcraft ước tính rằng Apache đã phục vụ 24,63% trong số hàng triệu trang web bận rộn nhất, trong khi Nginx phục vụ 23,21% và Microsoft đứng ở vị trí thứ ba với 6,85% (đối với một số thống kê khác của Netcraft, Nginx đi trước Apache), theo W3Techs, Apache đứng đầu với 35,0% và Nginx đứng thứ hai với 33,0% và Cloudflare Server thứ ba với 17,3%.

Apache được phát triển và duy trì bởi một cộng đồng mã nguồn mở dưới sự bảo trợ của Apache Software Foundation. Apache được phát hành với giấy phép Apache License và là một phần mềm tự do và miễn phí.

Apache HTTP Server hoạt động như thế nào?

Trong thế giới internet, Server chính là máy chủ, còn Apache HTTP Server là phần mềm chạy trên máy chủ, phần mềm này có nhiệm vụ phân phát tài nguyên đến cho chúng ta mỗi khi chúng ta truy cập, thông qua Google Chrome, Firefox, Edge,... và trình duyệt sẽ hiển thị lên cho chúng ta thấy. Nó cũng tiếp nhận dữ liệu mà chúng ta thao tác ví dụ như upload file, ảnh, bình luận v.v...  sau đó đưa cho PHP để xử lý.

Ngoài việc xử lý và điều phối yêu cầu của người dùng, Apache còn có hệ thống module với độ tùy biến cao, một số module rất thông dụng trong số đó là ssl, proxy, rewrite...

Đối thủ cạnh tranh

Tuy Apache là một máy chủ phổ biến, nó cũng tồn tại những nhược điểm và đối thủ của mình, Apache và Nginx  điều có những điểm mạnh riêng biệt, Apache đi kèm với tài liệu lớn hơn và hỗ trợ tốt hơn để tải các mô-đun động khác nhau, trong khi Nginx có thể phục vụ nhiều luồng nội dung và phương tiện tĩnh cho các trang web có lưu lượng truy cập cao.

Trong một số trường hợp, Apache và Nginx có thể kết hợp với nhau, Nginx có thể được đặt trước Apache dưới dạng proxy ngược. Điều này tận dụng tốc độ xử lý nhanh của Nginx để xử lý tất cả các yêu cầu từ khách hàng. Đối với nội dung động, chẳng hạn như các tệp PHP, Nginx cung cấp yêu cầu cho Apache, xử lý kết quả và trả về trang được hiển thị.

Qua bài viết này mình đã giới thiệu các bạn một phần mềm trên máy chủ, đó là Apache HTTP Server,  hy vọng đã cung cấp cho các bạn một số thông tin hữu ích về máy chủ và công việc/học tập của mình.

Đánh giá bài hướng dẫn:  
Báo cáo một vấn đề
Article ID: 915
Cập nhật gần nhất: 22 Th02, 2022
Lần sửa đổi: 1
Lượt xem: 0