Apache HTTP là máy chủ web được sử dụng rộng rãi nhất trên thế giới. Nó cung cấp nhiều tính năng mạnh mẽ bao gồm các mô-đun, hỗ trợ phương tiện truyền thông mạnh mẽ và tích hợp rộng rãi với các phần mềm phổ biến khác. Trong hướng dẫn này, ta sẽ cài đặt máy chủ web Apache với CentOS 8 .
Chuẩn bị
Bạn cần các thành phần sau để hoàn thành hướng dẫn này:
- User không phải root có quyền sudo được cấu hình trên server , hãy cài đặt theo hướng dẫn cài đặt server ban đầu cho CentOS 8 .
- Đảm bảo firewall tắt hoặc được mở cổng.
Bước 1 - Cài đặt Apache
Apache có sẵn trong repository mặc định của CentOS, nghĩa là bạn có thể cài đặt nó bằng trình quản lý gói dnf
.
Cài đặt gói Apache:
- sudo dnf install httpd
Sau khi xác nhận cài đặt, dnf
sẽ cài đặt Apache và tất cả các gói phụ thuộc cần thiết.
Nếu bạn cấu hình Apache để đi qua HTTPS, cần mở cổng 443
bằng cách bật dịch vụ https
:
- sudo firewall-cmd --permanent --add-service=https
Tiếp theo, reload firewall để các rule (luật) mới này có hiệu lực:
- sudo firewall-cmd --reload
Sau khi firewall reload, bạn đã sẵn sàng khởi động dịch vụ và kiểm tra web server.
Bước 2 - Kiểm tra Web Server
Apache không tự động khởi động trên CentOS sau khi quá trình cài đặt hoàn tất, vì vậy bạn cần start Apache theo cách thủ công:
- sudo systemctl start httpd
Xác minh dịch vụ đang chạy bằng lệnh sau:
- sudo systemctl status httpd
Bạn sẽ nhận được trạng thái active
khi dịch vụ đang chạy:
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disa>
Active: active (running) since Thu 2020-04-23 22:25:33 UTC; 11s ago
Docs: man:httpd.service(8)
Main PID: 14219 (httpd)
Status: "Running, listening on: port 80"
Tasks: 213 (limit: 5059)
Memory: 24.9M
CGroup: /system.slice/httpd.service
├─14219 /usr/sbin/httpd -DFOREGROUND
├─14220 /usr/sbin/httpd -DFOREGROUND
├─14221 /usr/sbin/httpd -DFOREGROUND
├─14222 /usr/sbin/httpd -DFOREGROUND
└─14223 /usr/sbin/httpd -DFOREGROUND
...
Như trên, dịch vụ đã chạy. Tuy nhiên, cách tốt nhất để kiểm tra là gọi một trang từ Apache.
Bạn có thể truy cập trang đích Apache mặc định để xác nhận phần mềm đang chạy đúng thông qua địa chỉ IP. Hãy nhập địa chỉ đó vào thanh địa chỉ của trình duyệt:
http://your_server_ip
Bạn sẽ thấy trang web CentOS 8 Apache mặc định:
Trang này cho biết Apache đang hoạt động chính xác và gồm một số thông tin cơ bản về các file Apache quan trọng và vị trí folder.
Bước 3 - Quản lý tiến trình Apache
Dịch vụ đã được cài đặt và đang chạy, bây giờ bạn có thể sử dụng các lệnh systemctl khác nhau để quản lý dịch vụ.
Để dừng web server , hãy nhập:
- sudo systemctl stop httpd
Để khởi động web server khi nó bị dừng, hãy nhập:
- sudo systemctl start httpd
Để dừng và sau đó bắt đầu lại dịch vụ, hãy nhập:
- sudo systemctl restart httpd
Nếu chỉ đơn giản là thay đổi cấu hình, Apache có thể reload mà không làm mất kết nối:
- sudo systemctl reload httpd
Theo mặc định, Apache được cấu hình để khởi động tự động khi server khởi động. Nếu không cần, bạn hãy tắt bằng lệnh:
- sudo systemctl disable httpd
Để cho phép dịch vụ khởi động khi server khởi động, hãy nhập:
- sudo systemctl enable httpd
Cấu hình mặc định cho Apache sẽ cho phép server lưu trữ một trang web duy nhất. Nếu lưu trữ nhiều tên domain trên server , bạn cần phải cấu hình các Virtual host trên web server Apache .
Bước 4 - Cài đặt Virtual host (Khuyến nghị)
Khi sử dụng web server Apache, bạn có thể sử dụng Virtual host để cấu hình nhiều domain trên một server duy nhất. Trong bước này, bạn sẽ cài đặt một domain có tên là example.com
, bạn có thể thay thế domain này bằng tên domain của bạn.
Apache trên CentOS 8 có một cấu hình Virtual host được kích hoạt theo mặc định với folder root: /var/www/html
. Thay vì sửa đổi /var/www/html
, bạn sẽ tạo cấu trúc folder bên trong /var/www
cho trang web example.com
, giữ nguyên /var/www/html
mặc định.
Tạo folder html
cho example.com
như sau, sử dụng cờ -p
để tạo bất kỳ folder nào cần thiết:
- sudo mkdir -p /var/www/example.com/html
Tạo một folder bổ sung để lưu trữ các file Log cho trang web:
- sudo mkdir -p /var/www/example.com/log
Tiếp theo, chỉ định quyền sở hữu folder html
với biến môi trường $USER
:
- sudo chown -R $USER:$USER /var/www/example.com/html
Đảm bảo root web có các quyền mặc định:
- sudo chmod -R 755 /var/www
Tiếp theo, tạo một trang index.html
mẫu bằng vi
hoặc trình soạn thảo nào đó bạn muốn:
- sudo vi /var/www/example.com/html/index.html
Nhấn i
để chuyển sang chế độ INSERT
và thêm HTML mẫu sau vào file:
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com virtual host is working!</h1>
</body>
</html>
Lưu file bằng cách nhấn ESC
, nhập :wq
và nhấn ENTER
.
Với folder trang web và file index, bạn đã sẵn sàng để tạo file Virtual host. Các file Virtual host chỉ cấu hình của các trang web riêng biệt và cho web server Apache biết cách phục vụ các yêu cầu domain khác nhau.
Trước khi tạo Virtual host, bạn cần tạo một folder sites-available
để lưu trữ chúng. Bạn cũng cần tạo folder sites-enabled
để thông báo cho Apache rằng Virtual host đã sẵn sàng đáp ứng truy cập. Folder sites-enabled
sẽ chứa các liên kết mềm (softlink) đến các Virtual host. Tạo cả hai folder bằng lệnh sau:
- sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled
Tiếp theo, yêu cầu Apache tìm kiếm các Virtual host trong folder sites-enabled
. Để thực hiện điều này, hãy chỉnh sửa file cấu hình chính của Apache, thêm một dòng khai báo folder tùy chọn cho các file cấu hình bổ sung:
- sudo vi /etc/httpd/conf/httpd.conf
Nhấn viết hoa G
để chuyển về cuối file. Sau đó nhấn i
để chuyển sang chế độ INSERT
và thêm dòng sau vào cuối file:
...
# Supplemental configuration
#
# Load config files in the "/etc/httpd/conf.d" directory, if any.
IncludeOptional conf.d/*.conf
IncludeOptional sites-enabled/*.conf
Lưu file khi bạn hoàn tất việc thêm dòng đó. Bây giờ đã có các folder Virtual host, bạn sẽ tạo file Virtual host.
Bắt đầu bằng cách tạo một file mới trong folder sites-available
trên sites-available
:
- sudo vi /etc/httpd/sites-available/example.com.conf
Thêm vào đoạn cấu hình sau và thay đổi domain example.com
tên domain :
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/html
ErrorLog /var/www/example.com/log/error.log
CustomLog /var/www/example.com/log/requests.log combined
</VirtualHost>
Thao tác này sẽ cho Apache biết nơi tìm trực tiếp root chứa các file web có thể truy cập. Nó cũng cho Apache biết nơi chứa lỗi và yêu cầu log cho trang web cụ thể này.
Lưu file khi bạn hoàn tất.
Bạn đã tạo các file Virtual host, bạn sẽ kích hoạt chúng để Apache sử dụng. Để thực hiện việc này, hãy tạo một liên kết softlink cho từng Virtual host trong folder sites-enabled
:
- sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
Virtual host hiện đã được cấu hình và sẵn sàng cung cấp nội dung.
Bạn có thể truy cập http://example.com để kiểm tra kết quả (thay example.com bằng domain của bạn)
Kết luận
Trong hướng dẫn trên, bạn đã cài đặt và quản lý web server Apache ở mức cơ bản nhất. Nếu bạn muốn xây dựng ứng dụng hoàn chỉnh hơn, bạn có thể xem bài viết này về cách cấu hình LAMP trên CentOS 8 .
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
hoặc
https://bit.ly/oaz_fp
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội
=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle dataguard, oracle goldengate, oracle weblogic, oracle exadata, hoc solaris, hoc linux, hoc aix