LAMP là một hệ thống các phần mềm xây dựng lên môi trường máy chủ web trên Linux. Cùng tìm hiểu cách cài đặt LAMP trên Ubuntu 20.04 sau đây nhé.
Ở phần trước, chúng ta đã tìm hiểu về cách cài đặt LAMP trên CentOS 7, bạn có thể xem lại tại đây. Tiếp theo chúng ta sẽ tiếp tục với bài viết hướng dẫn cách cài đặt LAMP trên Ubuntu 20.04 ngay dưới đây nhé.
I. LAMP là gì?
Chúng ta cùng nhắc lại một chút kiến thức cơ bản về LAMP nhé. LAMP hay L.A.M.P là tập hợp các phần mềm mã nguồn mở phổ biến được sử dụng để phát triển và triển khai các ứng dụng web.
LAMP bao gồm 4 thành phần:
- LINUX: Là hệ điều hành cơ bản cho môi trường web LAMP. Nó cung cấp nền tảng cho các ứng dụng web chạy trên máy chủ.
- APACHE: Là một máy chủ web phổ biến, được sử dụng để xử lý các yêu cầu HTTP từ trình duyệt web và cung cấp nội dung web đến với người dùng.
- MySQL (hoặc MariaDB): MySQL hoặc MariaDB là hệ quản trị cơ sở dữ liệu, nơi lưu trữ và quản lý dữ liệu cho các ứng dụng web.
- PHP/Python/Perl: Đóng vai trò là ngôn ngữ lập trình được sử dụng để phát triển những ứng dụng web động. Chúng sẽ tương tác với cơ sở dữ liệu và tạo ra các nội dung động cho người dùng.
II. Cài đặt LAMP trên Ubuntu 20.04
1. Yêu cầu trước khi cài đặt
Để làm theo hướng dẫn này, bạn cần có hệ điều hành Ubuntu 20.04 chạy trên máy tính cục bộ hoặc trên máy chủ được SSH(Telnet) từ xa.
Bạn cũng có thể xem xét một VPS (Virtual Private Server) hoặc thiết lập L.A.M.P với một tên miền.
2. Các bước cài đặt LAMP trên Ubuntu 20.04
2.1 Cập nhật gói phần mềm
Trước khi muốn cài đặt một phần mềm nào đó, ta đều cần phải nâng cấp hệ thống và cập nhật danh sách các gói. Bạn hãy vào Server và khởi chạy 2 câu lệnh sau:
sudo apt update sudo apt upgrade |
2.2 Cài đặt Apache Web Server
Sau khi đã nâng cấp hệ thống và cập nhật các gói hoàn tất, chúng ta tiến hành nhập câu lệnh để cài đặt Apache. Bạn cũng có thể cài đặt thêm gói apache2-utils - gói này sẽ cài đặt một số tiện ích hữu ích như công cụ benchmark Apache HTTP Server.
sudo apt install -y apache2 sudo apt install -y apache2-utils |
Sau khi đã cài đặt xong, mặc định Ubuntu Server sẽ tự động khởi động Apache cho chúng ta. Tuy nhiên, để chắc chắn, chúng ta cũng nên tự khởi động thủ công bằng 2 câu lệnh sau:
sudo systemctl start apache2 sudo systemctl enable apache2 |
Sau khi khởi động thủ công hoàn tất, chúng ta có thể kiểm tra lại trạng thái của Apache.
systemctl status apache2 |
Nếu có đầu ra như hình 2.1 nghĩa là bạn đã khởi động thành công Apache.
Lưu ý: Nếu sau khi nhập lệnh kiểm tra trạng thái nhưng không thoát được ngay lập tức, bạn có thể bấm phím Q hoặc bấm tổ hợp phím Ctrl + C để trở về Terminal.
Kiểm tra lại phiên bản sau khi đã cài đặt thành công:
apache2 -v |
Đầu ra:
Server version: Apache/2.4.52 (Ubuntu) Server built: 2023-10-26T13:44:44 |
Kiểm tra hoạt động của Apache:
Bạn hãy kiểm tra xem địa chỉ IP của Server Ubuntu của mình là gì bằng câu lệnh:
ip a |
Sau khi biết địa chỉ IP của Server, bạn hãy truy cập vào một trình duyệt bất kì và nhập IP của Server vào ô tìm kiếm. Nếu trang web Apache2 Default Page hiện ra như hình 2.2 nghĩa là bạn đã hoàn thành tiến trình cài đặt Apache.
Một số lỗi thường gặp:
Nếu như bạn gõ IP nhưng không truy cập được, đừng lo, vấn đề chỉ nằm ở phần tường lửa của máy mà thôi. Bạn hãy tiến hành mở Port theo hướng dẫn bên dưới
- Nếu bạn sử dụng iptables
sudo iptables -I INPUT -p tcp - -dport 80 -j ACCEPT |
- Nếu bạn đang sử dụng tường lửa UFW
sudo ufw allow http |
Lỗi cũng có thể sẽ phát sinh do chưa phân quyền owner. Bây giờ, bạn cần đặt www-data (Apache user) làm chủ sở hữu của document root (hay còn gọi là web root). Theo như mặc định của Ubuntu Server, nó sẽ thuộc sở hữu của người dùng root.
sudo chown www-data:www-data /var/www/html/ -R |
Theo mặc định, Apache sẽ sử dụng hostname hệ thống làm ServerName toàn cầu của nó. Nếu không thể phân giải tên máy chủ hệ thống trong DNS, thì bạn có thể sẽ gặp lỗi sau khi chạy lệnh sudo apache2ctl -t. Lỗi sẽ trông như sau:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message |
Để khắc phục lỗi này, bạn có thể đặt Servername toàn cầu trong Apache. Ta có thể sử dụng trình soạn thảo VIM để tạo một file cấu hình mới. File cấu hình sẽ nằm trong đường dẫn /etc/apache2/conf-available.
sudo vim /etc/apache2/conf-available/servername.conf |
Bấm I để vào chế độ Insert và thêm vào nội dung sau:
Servername 127.0.0.1 |
Lưu và đóng file. Để lưu và đóng một file trong VIM, ta thoát chế độ hiện tại bằng cách bấm ESC, sau đó bấm tổ hợp :wq để lưu và thoát khỏi VIM. Sau đó, ta tiến hành kích hoạt file cấu hình này.
sudo a2ensite servername.conf |
Reload lại Apache để áp dụng các thay đổi mới:
sudo systemctl reload apache2 |
Bây giờ bạn đã hoàn thành cài đặt Apache.
2.3 Cài đặt MariaDB Database Server
MariaDB là một phiên bản thay thế cho MySQL Server. Nó được phát triển bởi các thành viên cũ của nhóm MySQL - những người lo ngại rằng Oracle có thể biến MySQL thành một sản phẩm mã nguồn đóng. Ta nhập các lệnh sau để cài đặt MariaDB trên UbuntuServer.
- Cài đặt MariaDB Database Server:
sudo apt install -y mariadb-server mariadb-client |
- Khởi động dịch vụ MariaDB và kiểm tra trạng thái
sudo systemctl start mariadb sudo systemctl enable mariadb systemctl status mariadb |
Kết quả đầu ra sẽ hiển thị như hình 2.3.
- Chạy Script bảo mật sau cài đặt:
Bây giờ các bạn sẽ cài đặt mật khẩu root cho Mariadb và thiết lập một số tùy chỉnh với lệnh:
sudo mysql_secure_installation |
Tiến trình cài đặt sẽ thực hiện ở hình 2.4 và hình 2.5:
Giải thích:
1: Mục này nhập Enter khi bạn chưa có mật khẩu.
2: Chuyển sang kiểu xác thực unix_socket.
3: Thay đổi root password: Nhập Y để thiết lập mật khẩu mới. Nhập mật khẩu và nhập lại 1 lần. Lưu ý rằng mật khẩu sẽ không hiển thị.
Giải thích:
4: Nhấn Y để xóa bỏ các user khác.
5: Nhấn Y để không cho phép root đăng nhập từ xa.
6: Nhấn Y để xóa bỏ database.
7: Nhấn Y để khởi chạy lại bảng Privilege (bảng phân quyền).
Sau khi hoàn thành, bạn hãy thực hiện kiểm tra lại version của Mariadb.
mariadb - -version |
Như bạn đã thấy, MariaDB đã được cài đặt thành công.
mariadb Ver 15.1 Distrib 10.6.12-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper |
2.4 Cài đặt PHP
Tại thời điểm mình viết bài này, PHP8.1 hiện đang là phiên bản mới nhất của PHP, nó có hiệu suất cao vượt trội hơn so với các phiên bản tiền nhiệm. Vậy nên mình sẽ thực hiện cài đặt PHP8.1, kèm theo đó là một số modules cần thiết.
sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt install -y php8.1 libapache2-mod-php8.1 sudo apt install php-net-ldap2 php-net-ldap3 php-imagick php8.1-common php8.1-gd php8.1-imap php8.1-mysql php8.1-curl php8.1-zip php8.1-xml php8.1-mbstring php8.1-bz2 php8.1-intl php8.1-gmp php8.1-redis |
Khi cài đặt xong, PHP8.1 sẽ mặc định được enable sẵn, tuy nhiên nếu máy của bạn chưa được enable sẵn, bạn có thể dùng lệnh sau để khởi động PHP.
sudo a2ensite php8.1.conf sudo systemctl restart apache2 |
Để kiểm tra các script PHP với Apache Server, bạn cần tạo một file info.php trong thư mục document root của Apache2. Ta sẽ sử dụng trình soạn thảo văn bản VIM.
sudo VIM /var/www/html/info.php |
Tiếp đó, hãy chép đoạn code sau vào trong file. Lưu ý: Bấm I để vào chế độ chỉnh sửa để khi thực hiện chép code sẽ không bị mất chữ.
<?php phpinfo(); ?> |
Bây giờ, bạn thực hiện lưu file và thoát khỏi VIM. Thực hiện khởi động lại httpd.
systemctl restart httpd |
Sau đó, truy cập vào một trình duyệt web bất kì, trong thanh địa chỉ của trình duyệt, hãy nhập ServerIP/info.php(hãy thay thế ServerIP bằng địa chỉ IP Server của bạn).
Bạn sẽ thấy thông tin PHP máy chủ, điều này có nghĩa là các script PHP đã chạy đúng với Apache WebServer.
Như vậy là quá trình cài đặt PHP đã hoàn tất. L.A.M.P đã được cài đặt thành công trên UbuntuServer của bạn.
3. Một số lưu ý khi cài đặt LAMP trên Ubuntu 20.04
Khi cài đặt LAMP trên Ubuntu 20.04, có một số điều quan trọng cần lưu ý để đảm bảo quá trình triển khai diễn ra mượt mà và an toàn. Dưới đây là một số lưu ý:
- Firewall: Hãy chắc chắn rằng firewall của bạn đã được cấu hình đúng để cho phép lưu lượng truy cập qua các cổng cần thiết, như cổng 80 cho HTTP và cổng 443 cho HTTPS.
- Sao lưu dữ liệu: Trước khi thực hiện bất kỳ thay đổi lớn nào trên hệ thống, đảm bảo bạn đã sao lưu dữ liệu quan trọng. Điều này có thể bao gồm cả cơ sở dữ liệu và các tệp tin cấu hình.
- Overwrite Default Apache Page: Khi Apache được cài đặt, trang mặc định có thể là "It works!" hoặc một trang chào mừng khác. Nếu bạn muốn, hãy thay thế nó bằng trang web của bạn để chắc chắn rằng máy chủ của bạn hoạt động đúng.
- Giám sát và Log: Thiết lập giám sát hệ thống và theo dõi các file log để theo dõi tình trạng của máy chủ và phát hiện các vấn đề ngay từ khi chúng xuất hiện.
- SSL/TLS Encryption: Nếu bạn triển khai trang web của mình, xem xét việc cài đặt chứng chỉ SSL/TLS để bảo vệ dữ liệu truyền tải giữa máy chủ và người dùng.
- Tối ưu hóa và Cấu hình: Tùy chỉnh cấu hình của Apache, MySQL và PHP để đáp ứng yêu cầu cụ thể của ứng dụng của bạn và tối ưu hóa hiệu suất.
Những lưu ý này sẽ giúp bạn có một hệ thống LAMP ổn định, an toàn và dễ quản lý trên Ubuntu Server.
>>> Xem thêm: Hướng dẫn cài đặt cPanel trên Ubuntu 20.04 chi tiết nhất
Tổng kết
LAMP là một bộ công cụ mạnh mẽ để phát triển các ứng dụng web. Hy vọng qua bài viết trên bạn có thể thực hiện cài đặt LAMP trên hệ điều hành Ubuntu 20.04 của mình một cách dễ dàng. Trong quá trình thực hiện có khó khăn gì, bạn hãy liên hệ với chúng tôi để được hỗ trợ nhanh nhất nhé. Chúc bạn thực hiện thành công!