Hướng dẫn cài đặt Apache web server trên CentOS 7 & CentOS 8

Hướng dẫn chi tiết cách cài đặt Apache web server trên CentOS 7 & CentOS 8 giúp thiết lập kết nối giữa server và trình duyệt người dùng (Firefox, Google Chrome, Safari…).

Cài đặt Apache trên CentOS 7 & CentOS 8

Trước tiên bạn cần chuẩn bị:

  • Một user account có quyền sudo.
  • Trình quản lý gói yum được cài mặc định.

Cài đặt Apache web server trên CentOS 7 & 8

1. Cập nhập Packages mới nhất cho CentOS

Bạn nhập lệnh sau để centos cập nhật các packages mới nhất:

sudo yum update

2. Cài đặt Apache

Để install Apache trên máy chủ CentOS 7 & 8, bạn sử dụng lệnh sau:

sudo yum install httpd

Hệ thống sẽ download và cài đặt Apache.

3. Kích hoạt Apache

Để Apache hoạt động được thì bạn phải khởi động lên bằng lệnh sau.

sudo systemctl start httpd

Tiếp theo, đặt dịch vụ Apache để bắt đầu khi hệ thống khởi động:

sudo systemctl enable httpd

4. Kiểm tra Apache đã chạy chưa?

Bạn có thể test tại chỗ để xem việc cài đặt đã thành công hay chưa bằng cách truy cập public IP address của server trong trình duyệt web của bạn:

http://your_server_IP_address/

Trang mặc định của CentOS sẽ hiển thị:

Hướng dẫn cài đặt Apache trên CentOS 7 & CentOS 8 (1)

5. Cấu hình Firewall để cho phép truy cập Apache

Trong bản cài đặt chuẩn, CentOS 7 được cài đặt để ngăn chặn lưu lượng truy cập đến Apache.

Lưu lượng truy cập web thông thường sử dụng giao thức http trên cổng 80, trong khi lưu lượng truy cập web được mã hóa sử dụng giao thức https trên cổng 443.

Thay đổi Firewall để cho phép kết nối các cổng này bằng các lệnh sau:

sudo firewall-cmd ––permanent ––add-port=80/tcp

sudo firewall-cmd ––permanent ––add-port=443/tcp

Khi hoàn thành hãy reload firewall để áp dụng thay đổi bằng lệnh:

sudo firewall-cmd ––reload

6. Cách thêm domain vào apache

Một phần không thể thiếu của máy chủ web là chạy nhiều web trên 1 server. Bạn có thể thêm domain vào máy chủ và cấu hình chúng riêng rẽ. Mỗi cấu hình như thế được gọi là virtual host, mỗi một virtual host sẽ quy định cho mỗi tên miền riêng. Bạn có thể tạo ra vô số virtual host để thêm domain vào VPS và chạy nhiều web trên 1 server.

Cùng theo dõi các bước thực hiện sau:

Bước 1: Tạo thư mục chứa website

mkdir -p /var/www/kdata.vn/public_html

Bước 2: Gán quyền để đảm bảo website hoạt động bình thường

Chown –R apache:apache /var/www/kdata.vn/public_html

Chmod 755 /var/www

Bước 3: Cài đặt Virtual Host

Sửa file cấu hình mặc định của Apache

vi  /etc/httpd/conf/httpd.conf

Di chuyển xuống cuối file và thêm các dòng sau:

<VirtualHost *:80>

  ServerAdmin info@kdata.vn

  DocumentRoot /var/www/kdata.vn/public_html

  ServerName www.kdata.vn

  ServerAlias kdata.vn

  ErrorLog /var/www/kdata.vn/error.log

  CustomLog /var/www/kdata.vn/requests.log common

</VirtualHost>

Bạn cần chú ý các dòng ServerName, serverAlias, Document Root, để sửa lại cho phù hợp.

Chú ý: Nếu bạn thêm nhiều domain thì nhân bản VirtualHost lên theo ví dụ dưới.

<VirtualHost *:80> 

ServerAdmin info@kdata.vn

  DocumentRoot /var/www/kdata.vn/public_html

  ServerName www.kdata.vn

  ServerAlias kdata.vn

  ErrorLog /var/www/kdata.vn/error.log

  CustomLog /var/www/kdata.vn/requests.log common

</VirtualHost>

<VirtualHost *:80>

  ServerAdmin info@kcdn.vn

  DocumentRoot /var/www/kcdn.vn/public_html

  ServerName www.kcdn.vn

  ServerAlias kcdn.vn

  ErrorLog /var/www/kcdn.vn/error.log

  CustomLog /var/www/kcdn.vn/requests.log common

</VirtualHost>

Đừng quên tạo thêm thư mục kcdn.vn như ở bước 2 nhé.

Bước 4: Khởi động lại Apache

sudo systemctl restart httpd

Bước 5: Upload source lên thư mục /var/www/kdata.vn/public_html (Tương ứng với thư mục các bạn đã tạo cho domain)

Bây giờ công việc cuối cùng là nhập domain của bạn lên trình duyệt để kiểm tra web đã hoạt động hay chưa nhé.

7. Các lệnh khác để quản lý Apache

Các câu lệnh mà bạn cần sử dụng để quản lý dịch vụ Apache bao gồm:

Ngừng dịch vụ Apache:

sudo systemctl stop httpd

Ngăn chặn hoặc vô hiệu hóa Apache khi hệ thống khởi động:

sudo systemctl disable httpd

Kích hoạt lại Apache:

sudo systemctl enable httpd

Khởi động lại Apache và áp dụng bất kỳ thay đổi nào mà bạn đã thực hiện:

sudo systemctl restart httpd

Kiểm tra tình trạng Apache đang tắt hay đang chạy bằng lệnh:

sudo systemctl status httpd

Vậy là đã cài đặt hoàn tất cài đặt Apache web server trên CentOS 7 & 8. Chúc bạn thành công nhé!