Apache là chương trình dịch vụ Web Server miễn phí nổi tiếng nhất thế giới . Apache Web Server ban đầu được viết cho Unix, nhưng bây giờ Apache đã hỗ trợ các nền tảng khác như Microsoft Windows
, MacOS
, Linux
(RedHat
/ CentOS
/ Fedora
/ Debian
/ Ubuntu
…) . Mặc dù miễn phí, Apache Web Server có nhiều tính năng mạnh mẽ và hỗ trợ nhiều ngôn ngữ lập trình Web bao gồm Perl
, Python
, và PHP
…
Web Server là gì?
- Web Server là 1 dịch vụ mạng hướng nội dung của người dùng lên giao diện Web .
- Nhiệm vụ của Web Server là đưa website lên Internet . Để làm được điều đó , nó hoạt động giống như là một người đứng giữa Server và máy khách Client . Nó sẽ kéo nội dung từ Server về cho mỗi một truy vấn xuất phát từ máy khách để hiển thị kết quả tương ứng dưới hình thức là một Website .
- Điểm khó khăn lớn nhất của một Web Server là kéo dữ liệu cho nhiều người dùng cùng một lúc – vì mỗi một người lại cũng đang truy vấn tới các trang web khác nhau . Web server xử lý các file này dưới ngôn ngữ lập trình như là
PHP
,Python
,Java
,… Những ngôn ngữ này biến chúng thành fileHTML
và file trên trình duyệt cho người dùng web thấy được . - Web Server còn được gọi là HTTP server và chúng sử dụng giao thức HTTP – hypertext transport protocol ( port
80/TCP
) . - Các Web Server có thể cài lên CentOS 7 là :
- Apache HTTP Server
- Apache Tomcat
- nginx
- OpenLiteSpeed
Apache HTTP Server
- Trang chủ : http://httpd.apache.org/
- Source Code : https://github.com/apache/httpd
- Apache là phần mềm web server mã nguồn mở đa nền tảng miễn phí , sử dụng giấy phép Apache License
2.0
- Ra đời năm
1995
bởi Robert McCool - Phiên bản ổn định mới nhất :
2.4.39
(tháng 4-2019
) , tuy nhiên đã phát hành tới bản2.4.9
- Apache được phát triển và duy trì bởi một cộng đồng các nhà phát triển dưới sự bảo trợ của Quỹ phần mềm Apache ( Apache Software Foundation ) .
- Phần lớn các phiên bản Apache chạy trên bản phân phối Linux , nhưng các phiên bản hiện tại cũng chạy trên Microsoft Windows và nhiều hệ thống tương tự Unix . Các phiên bản trước đây cũng chạy trên OpenVMS , NetWare và các hệ điều hành khác .
- Là 1 thành phần của LAMP Stack – (
Linux
,Apache
,MariaDB
,Perl/Python/PHP
) - Theo NetCraft , tính đến tháng
7-2019
, Apache đang chiếm đến khoảng27.75%
thị phần websites trên toàn thế giới .
Ưu điểm
- Phần mềm mã nguồn mở và miễn phí, kể cả cho mục đích thương mại
- Phần mềm đáng tin cậy, ổn định
- Được cập nhật thường xuyên, nhiều bản vá lỗi bảo mật liên tục
- Linh hoạt vì có cấu trúc module
- Dễ cấu hình, thân thiện với người mới bắt đầu
- Đa nền tảng (hoạt động được cả với server Unix và Windows )
- Hoạt động cực kỳ hiệu quả với WordPress sites
- Có cộng đồng lớn và sẵn sàng hỗ trợ với bất kỳ vấn đề nào
Nhược điểm
- Gặp vấn đề hiệu năng nếu website có lượng truy cập cực lớn
- Quá nhiều lựa chọn thiết lập có thể gây ra các điểm yếu bảo mật
Các lệnh cơ bản về Apache trên CentOS 7
1) Cài đặt Apache
B1: Cài đặt repo Epel
:
yum install -y epel-release
B2: Cài đặt gói httpd
:
yum install -y httpd
B3: Cấu hình Firewalld
Cho phép dịch vụ httpd
:
firewall-cmd --zone=public --permanent --add-service=http firewall-cmd --reload
B4: Khởi động dịch vụ httpd
và cấu hình tự khởi động khi boot :
systemctl start httpd systemctl enable httpd
B5: Kiểm tra trạng thái dịch vụ httpd
:
systemctl status httpd
2) Gỡ cài đặt Apache
yum remove httpd -y
3) Kiểm tra version Apache đã cài
httpd -v
Cài đặt Apache từ Source
B1 : Download source httpd
về từ Internet và lưu vào thư mục /var/tmp
cd /var/tmp wget https://archive.apache.org/dist/httpd/httpd-2.4.35.tar.gz tar -zxvf httpd-2.4.35.tar.gz
B2 : Cài đặt các gói thư viện bổ sung
- Biên dịch gói APR
1.7.0
(Apache Portable Runtime Library)
wget https://www.apache.org/dist/apr/apr-1.7.0.tar.gz cd apr-1.7.0/ ./configure make && make install cd ..
- Cài đặt Expat-devel
2.1.0
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/expat-devel-2.1.0-10.el7_3.x86_64.rpm rpm -ivh expat-devel-2.1.0-10.el7_3.x86_64.rpm
Chú ý : Phải cài đặt expat-devel trước khi biên dịch APR-util
- Biên dịch gói APR-util
1.6.1
wget https://www.apache.org/dist/apr/apr-util-1.6.1.tar.gz cd apr-util-1.6.1/ ./configure --with-apr=/usr/local/apr/bin/apr-1-config make && make install cd ..
- Biên dịch gói PCRE
8.4.3
(Perl Compatible Regular Expressions)
wget -O pcre-8.43.tar.gz https://sourceforge.net/projects/pcre/files/pcre/8.43/pcre-8.43.tar.gz/download cd pcre-8.43/ ./configure make && make install cd ..
B3 : Biên dịch gói httpd 2.4.35
và cài đặt :
cd httpd-2.4.35/ ./configure make && make install
B4 : Khởi động dịch vụ httpd
:
systemctl start httpd
Các file/thư mục quan trọng của Apache
-
/var/html/
: là thư mục gốc chứa các filehtm
,html
,images
…. tạo thành nội dung cho trang web -
/etc/httpd/
: thư mục chứa tất cả các file cấu hình cho Apache :-
/etc/httpd/conf/httpd.conf
: file cấu hình chính của dịch vụ Apache -
/etc/httpd/conf.d/
: thư mục chứa các cấu hình bổ sung cho Apache-
/etc/httpd/conf.d/vhost.conf
: file cấu hình virtual host - ……..
-
-
/etc/httpd/conf.modules.d/
: thư mục chứa file cấu hình của các modules -
/var/log/httpd/error_log
: file chứa log lỗi dịch vụ -
/var/log/httpd/access_log
: file chứa log đăng nhập
-
THAM KHẢO