Apache là một máy chủ mạnh mẽ có tên xuất phát từ một cụm từ tiếng Anh gắn liền với tên của bộ tộc Apache của thổ dân da đỏ Bắc Mỹ. Trong số những người dùng Nga, nó có tên chung là "Apache". Đây là phần mềm mã nguồn mở có giấy phép GPL. Một trong những ưu điểm lớn nhất của nó là máy chủ đa nền tảng, có nghĩa là nó có thể chạy trên nhiều hệ điều hành khác nhau mà vẫn duy trì hiệu suất tuyệt vời.
Kể từ năm 1996, đây là máy chủ phổ biến nhất trên thế giới do tính ổn định và bảo mật của nó. Apache được phát triển bởi một cộng đồng các nhà phát triển người dùng, được dẫn dắt bởi Apache Software Foundation.
Lịch sử của Apache
Vào tháng 3 năm 1989, Tim Berners Lee, một nhà khoa học người Anh làm việc tại CERN (Thụy Sĩ), đã đề xuất một phương pháp mới để quản lý lượng thông tin khổng lồ trong các dự án CERN. Lúc đó không ai biết Apache là gì. Sự phát triển ban đầu của mạng tài liệu siêu liên kết, như Ted Nelson đã gọi chúng vào năm 1965, đã dẫn đến sự ra đời của WWW.- phần mềm đầu tiên được phát hành vào tháng 11 năm 1990 với tên World Wide Web, với trình duyệt web, giao diện đồ họa và trình soạn thảo WYSIWYG. Hai năm sau, chỉ có khoảng ba mươi mục trong danh sách các máy chủ WWW, trong đó có HTTPs NCSA.
Câu chuyện Apache thực sự bắt đầu vào tháng 3 năm 1995 với việc phát hành Apache 0.2 dựa trên máy chủ NCSA HTTPD 1.3. Nhiều người dùng muốn biết Apache ngày nay là gì và chương trình này như thế nào trong những tháng đầu tiên ra đời. Đó chỉ là một tập hợp các chỉnh sửa được áp dụng cho máy chủ NCSA. Tiếp theo, Robert Thau đã phát hành Shambhala 0.1 với các API cho các mô-đun được chứng minh là rất thành công.
Các mốc quan trọng nhất của dự án là tuân thủ hoàn toàn tiêu chuẩn HTTP 1.1, được đưa vào tháng 4 năm 1997 dưới dạng phiên bản 1.2. Phiên bản này đã bao gồm nền tảng Windows NT, ra mắt vào tháng 7 năm 1997. Kết hợp các tệp cấu hình đã được triển khai trong bản phát hành 1.3.3.
Apache Group chịu trách nhiệm về sự phát triển của máy chủ web và các quyết định phát triển cụ thể. Nhóm này cần được phân biệt với các nhà phát triển cốt lõi - Core group. Bản chất tự nguyện của hầu hết các nhà phát triển khiến không chắc họ đều hoạt động trong Apache cùng một lúc, vì vậy hạt nhân có trách nhiệm duy trì và chạy nó. Nói chung, các quyết định mà các nhà phát triển phải đưa ra thuộc về hạt nhân và bị giới hạn ở các phiếu bầu để đưa vào mã. Mặt khác, chúng thường có quyền truy cập ghi vào kho CVS, vì vậy chúng hoạt động như một cổng vào mã, đảm bảo mã chính xác và có chất lượng tốt.
Yêu cầu tối thiểu vàlợi ích
Apache đã được chấp nhận rộng rãi trên web và là máy chủ HTTP được sử dụng phổ biến nhất kể từ năm 1996. Đạt thị phần cao nhất vào năm 2005 khi máy chủ được 70% trang web trên toàn thế giới sử dụng. Trong những năm gần đây, thị phần của nó đã giảm. Đáng chú ý là đối với Apache, sự suy giảm như vậy không cho thấy sự kém phổ biến và suy thoái của công nghệ.
Yêu cầu tối thiểu để vận hành:
- Bộ xử lý - Pentium.
- RAM - 64 MB.
- OS-Microsoft Windows, GNU / Linux.
- Kích thước cài đặt - 50 MB.
Lợi ích:
- Thiết kế theo mô-đun.
- Mã nguồn mở.
- Thiết kế đa dạng.
- Khả năng mở rộng.
- Phổ biến - dễ dàng nhận được sự giúp đỡ và hỗ trợ.
Kiến trúc máy chủ
Máy chủ mô-đun Apache bao gồm một phần chính và các mô-đun khác nhau cung cấp hầu hết các chức năng cơ bản. Một số mô-đun sau:
- mod_ssl - giao tiếp an toàn qua TLS;
- mod_rewrite - ghi lại địa chỉ, thường được sử dụng để chuyển đổi các trang động như php thành các trang tĩnh để đánh lừa các công cụ tìm kiếm về nơi chúng được thiết kế;
- mod_dav - Hỗ trợ giao thức WebDAV (RFC 2518);
- mod_deflate - thuật toán nén trong suốt khi nội dung được gửi đến máy khách;
- mod_auth_ldap - cho phép người dùng xác thực với máy chủ LDAP;
- mod_proxy_ajp -trình kết nối để giao tiếp với các trang động Tomcat của Jakarta trong Java (các servlet và JSP).
Máy chủ cơ sở có thể được mở rộng để bao gồm các mô-đun bên ngoài, bao gồm:
- mod_cband - kiểm soát lưu lượng và giới hạn băng thông;
- mod_perl - động trong Perl;
- mod_php - động trong PHP;
- mod_python - động bằng Python;
- mod_rexx - động trong đối tượng REXX và REXX;
- mod_ruby - động trong Ruby;
- mod asp dot net - động trong Microsoft. NET;
- mod_mono - chuyển động sang đơn âm;
- mod_security - lọc cấp độ ứng dụng để bảo mật.
Cấu hình và bảo mật
Để hiểu Apache là gì về mặt bảo mật, bạn cần xem xét cấu hình của nó. Hầu hết cấu hình được thực hiện trong các tệp apache2.conf và httpd.conf, tùy thuộc vào hệ thống mà phần mềm đang chạy. Mọi thay đổi đối với tệp này đều yêu cầu khởi động lại máy chủ hoặc buộc phải đọc lại.
Giấy phép phần mềm mà phần mềm Apache cốt lõi được phân phối là một dấu ấn về lịch sử của Apache HTTP Server và cộng đồng nguồn mở. Giấy phép cho phép phân phối các sản phẩm mã nguồn mở và đóng.
Tổ chức Phần mềm Tự do không coi Giấy phép Apache tương thích với phiên bản 2 của Giấy phép Công cộng GNU (GPL), trong đó phần mềm được cấp phép và không được tích hợp với phần mềm. Điều này phải được tính đến trước khithiết lập một máy chủ web Apache được phân phối theo giấy phép GPL. Tuy nhiên, phiên bản 3 của GPL bao gồm một điều khoản cho phép nó tương thích với các giấy phép có điều khoản bồi thường bằng sáng chế.
Hầu hết các lỗ hổng bảo mật được phát hiện và khắc phục chỉ có thể được khai thác bởi người dùng cục bộ, không thể khai thác từ xa. Tuy nhiên, một số vẫn chạy từ xa trong một số tình huống nhất định. Hoặc nếu chúng bị người dùng cục bộ độc hại sử dụng để vi phạm các thỏa thuận lưu trữ được chia sẻ bằng cách sử dụng PHP làm mô-đun của máy chủ web Apache miễn phí.
Kiểm tra hoạt động của Apache
Để đảm bảo Apache đang hoạt động bình thường, hãy mở trình duyệt web và nhập địa chỉ sau: https:// localhost. Sau đó nhấn Enter, một trang trắng hiện ra với thông báo "This is working", đây là bằng chứng máy chủ web đang hoạt động tốt.
Apache cho phép bạn tạo các cấu hình tùy chỉnh để tùy chỉnh và thích ứng với nhu cầu của bạn. Để thực hiện việc này, hãy tìm tệp http.conf trong C: appserv Apache2.2 conf. Nó được sao lưu để tránh lỗi thời gian chạy, sau đó nó được mở bằng bất kỳ trình chỉnh sửa nào và các dòng cần thiết được thay đổi.
Để thực hiện các bước này một cách chính xác, bạn cần phải có kiến thức tốt về Apache worker, vì bất kỳ thay đổi nào được thực hiện sẽ được phản ánh trong hiệu suất và khởi động Apache. Nhờ các khuyến nghị mới nhất, máy chủ sẽ được cài đặt. Nó sẽ hoạt động ở cấu hình cơ bản cho phép bạn tải xuốngcác trang hoặc ứng dụng mạng trên Internet.
Quản lý thông tin
Apache là máy chủ web được sử dụng nhiều nhất, dẫn đầu với nhiều lượt cài đặt nhất trên thế giới, vượt xa các giải pháp khác như Máy chủ Thông tin Internet của Microsoft (IIS). Dự án này được mở để sử dụng vì nó đa nền tảng, có các phiên bản cho tất cả các hệ điều hành chính, rất đáng tin cậy và nổi bật về tính bảo mật và hiệu suất.
Máy tính đang chạy phần mềm này được đặt cùng tên. Điều này rất quan trọng vì nó có trách nhiệm chấp nhận các yêu cầu trang đến từ những khách truy cập vào trang web và quản lý việc gửi hoặc từ chối của họ theo chính sách bảo mật đã thiết lập. Mặc dù quá trình này có vẻ đơn giản, nhưng nó bao gồm nhiều khía cạnh và chức năng cần phải được hoàn thành:
- Hiệu suất truy vấn.
- Một số lượng lớn các yêu cầu HTTP, bao gồm cả đa nhiệm, có thể khiến dịch vụ bị sập.
- Hạn chế truy cập tệp, kiểm soát xác thực người dùng hoặc lọc các yêu cầu theo nguồn gốc của họ.
- Xử lý lỗi trên các trang thông tin khách truy cập và chuyển hướng đến các trang được xác định trước.
- Quản lý thông tin được truyền theo định dạng của nó và thông báo đầy đủ cho trình duyệt yêu cầu tài nguyên được chỉ định.
- Nhật ký quản lý để lưu trữ các yêu cầu đã nhận, lỗi đã xảy ra vànói chung, tất cả thông tin được đăng ký và phân tích để có được số liệu thống kê truy cập trang web.
Apache cho phép bạn thiết lập lưu trữ ảo dựa trên địa chỉ IP hoặc tên, nghĩa là có nhiều trang web trên một máy tính.
Tệp apache2.conf
Không nghi ngờ gì nữa, apache2.conf là tệp quan trọng nhất, vì nó xác định hành vi chung của các trang web và cũng chịu trách nhiệm truy cập các mô-đun khác nhau để mở rộng chức năng của máy chủ.
Nó nằm trong thư mục / etc / apache2 và vì nó là một tệp văn bản nên có thể dễ dàng chỉnh sửa bằng trình soạn thảo văn bản. Thuộc tính Tệp Cấu hình - Biến Toàn cục Máy chủ và Tiện ích mở rộng Chức năng.
Biến máy chủ toàn cục là các biến xác định hoạt động tổng thể:
- Bảng chỉ thị Apache. Tên máy chủ được biểu thị bằng biến ServerName, vì vậy bất kỳ chuyển hướng hoặc liên kết nào tồn tại trong tài liệu HTML đều hoạt động tốt. Hầu hết các biến cấu hình được phân phối giữa các tệp nhỏ khác được lưu trữ trong các bản mod.
- .htaccess là một tệp văn bản ẩn cho phép bạn tùy chỉnh cách máy chủ hoạt động.
- "Apache" là một thư mục cụ thể mà không cần phải sửa đổi tệp cấu hình apache2.conf chính. Khi một ứng dụng khách yêu cầu tệp từ máy chủ, tệp sẽ tìm từ thư mục gốc đến thư mục con chứa.htaccess được yêu cầu và tính đến các lệnh chứa tệp đó trước khi thực hiện yêu cầu.
Nguyên tắc.htaccess:
- Cấm liệt kê các tệp trong thư mục.
- Chuyển hướng lưu lượng truy cập web.
- Thiết lập các trang lỗi.
- Hạn chế quyền truy cập vào một số tệp nhất định.
- Từ chối quyền truy cập vào các địa chỉ IP hoặc dải địa chỉ IP cụ thể.
- Mở rộng chức năng liên quan đến các lệnh gọi mô-đun khác và các tệp cấu hình. Tất cả các lệnh liên quan đến mục này sẽ được đặt trước từ "Bật".
Cài đặt Máy chủ Web Apache
Apache ban đầu được thiết kế để hoạt động với công nghệ PHP, nhưng nó cũng có thể hoạt động với. NET mà không gặp sự cố, làm cho nó thành công hơn IIS của Microsoft, là một cộng tác viên cho các máy chủ sử dụng IIS và cung cấp hỗ trợ PHP đầy đủ mà không cần phải thay đổi cấu hình.
Để cài đặt và chạy một máy chủ web, trước tiên bạn cần tải nó xuống từ trang web chính thức. Luôn tìm phiên bản mới nhất của phần mềm hiện có và kiểm tra xem nó có được xác định là Win32 Binary bao gồm OpenSSL hay không.
Phiên bản có cài đặt sẵn và hệ thống bảo vệ dữ liệu. Sau khi được chọn, nó sẽ được tải xuống PC. Nhấp đúp vào biểu tượng tệp để bắt đầu quá trình, quá trình này rất đơn giản vì nó được đi kèm với một trợ lý.
Một trong những cửa sổ đầu tiên cung cấp thông tin cần thiết để máy chủ web có thể kết nối với mạng là cửa sổ thông tin. Tại đó, người dùng điền vào một biểu mẫu ngắn bằng cách thêm tên miền mạng, tên máy chủ và địa chỉ emailngười quản lý. Đối với hai tùy chọn đầu tiên, hãy chọn localhost.
Tiếp theo, cửa sổ cài đặt sẽ xuất hiện, nơi liệt kê tất cả các thành phần có sẵn. Chọn tất cả và kiểm tra xem thư mục c: appserv Apache2.2 có tồn tại hay không. Tiếp theo, định cấu hình máy chủ web Apache.
Web Monitor trên thanh tác vụ
Sau khi cài đặt Apache, hãy đảm bảo rằng nó đã được thực hiện chính xác. Để thực hiện việc này, hãy chuyển đến menu "Bắt đầu" và tìm tùy chọn "Chạy". Một cửa sổ bật lên sẽ xuất hiện trong đó bạn nhập cmd, một màn hình bật lên của hệ thống sẽ xuất hiện. Để đảm bảo người dùng đang chạy với tư cách quản trị viên, hãy nhấp chuột phải vào cửa sổ và chọn "Chạy với tư cách quản trị viên".
Thuật toán cài đặt:
- Tìm thư mục bin Apache trong bảng điều khiển Windows, để thực hiện việc này, hãy viết câu sau vào bảng điều khiển - c: appserv Apache2.2? trong.
- Sau khi nhập xong, nhấn Enter và thành phần hệ thống sẽ giống như thế này - C: appserv Apache2.2? In>.
- Trong thư mục bin, gõ http:.exe -k install và nhấn Enter.
- Một thông báo tương tự như ". Apache 2.2: dịch vụ đã được cài đặt" sẽ xuất hiện. Thông báo này sẽ xác minh rằng Apache đã được cài đặt thành công.
Một trong những cách hiệu quả nhất để kiểm tra xem Apache có đang chạy bình thường hay không là kiểm tra xem trình giám sát ứng dụng có đang hoạt động hay không. Nó có thể được nhìn thấy trên thanh tác vụ. Nếu nó không hoạt động, hãy kích hoạt nó bằng cách đi tới menu Start, All Programs và Apache http Server 2.2., Nhấp vào Monitor Apache Server và kích hoạt nó.
Monitor hữu ích vì nó cho phép bạn dừng máy chủ,tạm dừng và kích hoạt nó một cách hoàn toàn thoải mái mà không cần đến cửa sổ bảng điều khiển, chỉ bằng cách nhấp vào biểu tượng trên thanh tác vụ để mở cửa sổ điều khiển.
Mẹo Cài đặt Linux
Nếu người dùng có một trang web và cần một nền tảng để lưu trữ nó, bạn có thể sử dụng dịch vụ của một trong những nhà cung cấp dịch vụ lưu trữ hoặc cố gắng tự lưu trữ trang web của mình trên máy chủ.
Thuật toán cài đặt:
- Tải xuống phiên bản Apache ổn định mới nhất.
- Tải file nguồn theo hệ thống.
- Giải nén các tập tin phần mềm.
- Sau đó, các tệp đã tải xuống sẽ cần được giải nén: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
- Điều này tạo một thư mục mới trong thư mục hiện tại với các tệp nguồn.
- Ngay sau khi các tệp xuất hiện, hãy cho máy biết nơi tìm tất cả các tệp gốc. Cách dễ nhất để làm điều này là chấp nhận tất cả các giá trị mặc định và chỉ cần nhập:./configure.
- Thiết lập Apache, với điều kiện không có vấn đề gì về cài đặt và xây dựng. Người dùng điều chỉnh cấu hình, tương đương với việc chỉnh sửa tệp httpd.conf. Nó thường được chỉnh sửa bằng trình soạn thảo văn bản - vi PREFIX /conf/httpd.conf. Bạn phải root để thực hiện bất kỳ thay đổi nào.
- Kiểm tra hoạt động của máy chủ.
Ứng dụng trên World Wide Web
Apach chủ yếu được sử dụng để gửi các trang tĩnh và động lên World Wide Web. Nhiều ứng dụng được thiết kế vớiMôi trường triển khai Apache hoặc sẽ sử dụng các đặc tính của máy chủ này. Apach là một thành phần máy chủ trong nền tảng ứng dụng LAMP phổ biến cùng với các ngôn ngữ lập trình MySQL và PHP, Perl, Python và Ruby, bao gồm cơ sở dữ liệu Oracle và máy chủ ứng dụng IBM WebSphere. Mac OS X tích hợp nó như một phần của máy chủ web riêng và hỗ trợ các ứng dụng WebObjects.
Apache được sử dụng cho nhiều tác vụ khác mà nội dung cần được truy cập một cách an toàn và đáng tin cậy. Ví dụ: khi chia sẻ tệp từ máy tính cá nhân lên Internet. Người dùng đã cài đặt Apache trên màn hình của họ có thể tùy ý đặt các tệp vào thư mục gốc của tài liệu, từ đó chúng có thể được chia sẻ.
Các nhà phát triển ứng dụng web đôi khi sử dụng phiên bản Apache cục bộ để xem trước và kiểm tra mã trong quá trình phát triển. Microsoft Internet Information Services (IIS) là đối thủ cạnh tranh chính của Apache, cũng như máy chủ web Sun Java System của Sun Microsystems và nhiều ứng dụng khác như Zeus Web-Server.
Một số trang web lớn nhất trên thế giới được cung cấp bởi Apache. Giao diện người dùng của công cụ tìm kiếm Google dựa trên phiên bản sửa đổi của nó được gọi là Máy chủ web của Google (GWS). Nhiều dự án Wikipedia cũng chạy trên máy chủ Apache.