Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 20.04 [Quickstart]
Trong hướng dẫn bắt đầu nhanh này, ta sẽ cài đặt LAMP trên server Ubuntu 20.04.Để có version chi tiết hơn của hướng dẫn này, với giải thích thêm về từng bước, vui lòng tham khảo Cách cài đặt ngăn xếp Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 20.04
Yêu cầu
 Để làm theo hướng dẫn này, bạn  cần  quyền truy cập vào  server  Ubuntu 20.04  với quyền  là  user  sudo .
Bước 1 - Cài đặt Apache
Cập nhật cache ẩn trình quản lý gói của bạn và sau đó cài đặt Apache bằng:
- sudo apt update 
- sudo apt install apache2 
Sau khi cài đặt xong, bạn  cần  điều chỉnh cài đặt firewall  để cho phép  truy cập HTTP  trên  server   của bạn . Chạy lệnh sau để cho phép truy cập bên ngoài trên cổng 80 (HTTP):
- sudo ufw allow in "Apache" 
Với luật firewall mới được thêm vào, bạn có thể kiểm tra xem server có hoạt động hay không bằng cách truy cập địa chỉ IP công cộng hoặc domain của server từ trình duyệt web . Bạn sẽ thấy một trang như thế này:
Bước 2 - Cài đặt MySQL
Bây giờ ta sẽ cài đặt MySQL, một hệ thống quản lý database phổ biến được sử dụng trong môi trường PHP.
   , hãy sử dụng apt  để cài đặt phần  mềm này:
- sudo apt install mysql-server 
Khi quá trình cài đặt hoàn tất, bạn nên chạy một tập lệnh bảo mật được cài đặt sẵn với MySQL. Bắt đầu tập lệnh tương tác bằng lệnh:
- sudo mysql_secure_installation 
Điều này sẽ hỏi xem bạn có muốn  cấu hình  VALIDATE PASSWORD PLUGIN . Trả lời Y có hoặc bất kỳ điều gì khác để tiếp tục mà không cần bật. Nếu bạn trả lời  “yes” ,  bạn cần  chọn mức độ xác thực password .
Tiếp theo, server của bạn sẽ yêu cầu bạn chọn và xác nhận password cho user gốc MySQL. Mặc dù phương pháp xác thực mặc định cho user root MySQL không cho phép sử dụng password , ngay cả khi một password được đặt , bạn nên xác định một password mạnh ở đây như một biện pháp an toàn bổ sung.
 Đối với các câu hỏi còn lại, nhấn Y và nhấn ENTER tại mỗi  dấu nhắc .
 Lưu ý: Tại thời điểm viết bài này, thư viện MySQL PHP mysqlnd không hỗ trợ caching_sha2_authentication , phương thức xác thực mặc định cho MySQL 8. Vì lý do đó, khi tạo  user  database  cho các ứng dụng PHP trên MySQL 8, bạn  cần  thực hiện hãy chắc chắn rằng chúng được  cấu hình  để sử dụng mysql_native_password thay thế. Vui lòng tham khảo bước 6 của hướng dẫn chi tiết về LAMP trên Ubuntu 20.04 của  ta  để tìm hiểu cách thực hiện điều đó.
Bước 3 - Cài đặt PHP
Để cài đặt PHP và các phụ thuộc của nó, hãy chạy:
- sudo apt install php libapache2-mod-php php-mysql 
Sau khi cài đặt xong, bạn có thể chạy lệnh sau để xác nhận version PHP của bạn :
- php -v 
OutputPHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies     with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies Bước 4 - Tạo server ảo cho trang web
Trong hướng dẫn này, ta sẽ cài đặt domain có tên your_domain , nhưng bạn nên thay thế domain này bằng domain của riêng mình .
 Apache trên Ubuntu 20.04 có một khối  server  được bật theo mặc định được cấu hình để cung cấp tài liệu từ folder  /var/www/html . Thay vì sửa đổi /var/www/html ,  ta  sẽ tạo cấu trúc folder  bên trong /var/www cho trang your_domain , giữ nguyên /var/www/html làm folder  mặc định được cung cấp nếu khách hàng không yêu cầu phù hợp với bất kỳ trang web nào khác.
Tạo folder cho your_domain như sau:
- sudo mkdir /var/www/your_domain 
Tiếp theo, chỉ định quyền sở hữu folder  với biến môi trường $USER , biến này sẽ tham chiếu đến  user  hệ thống hiện tại của bạn:
- sudo chown -R $USER:$USER /var/www/your_domain 
Sau đó, mở file  cấu hình mới trong folder  sites-available của Apache bằng trình soạn thảo dòng lệnh  bạn muốn :
- sudo nano /etc/apache2/sites-available/your_domain.conf 
Thao tác này sẽ tạo một file trống mới. Dán vào cấu hình cơ bản sau:
<VirtualHost *:80>     ServerName your_domain     ServerAlias www.your_domain      ServerAdmin webmaster@localhost     DocumentRoot /var/www/your_domain     ErrorLog ${APACHE_LOG_DIR}/error.log     CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>  Lưu file   khi bạn hoàn tất. Nếu bạn đang sử dụng nano ,  bạn có thể thực hiện bằng cách  nhấn CTRL+X , sau đó nhấn Y và ENTER .
  Đến đây bạn  có thể sử dụng a2ensite để kích hoạt  server  ảo mới:
- sudo a2ensite your_domain 
Để tắt trang web mặc định của Apache, hãy nhập:
- sudo a2dissite 000-default 
Để đảm bảo file cấu hình của bạn không có lỗi cú pháp, hãy chạy:
- sudo apache2ctl configtest 
Cuối cùng, reload Apache để những thay đổi này có hiệu lực:
- sudo systemctl reload apache2 
Trang web mới của bạn hiện đã hoạt động, nhưng root  web /var/www/ your_domain vẫn trống. Tạo index.html ở vị trí đó để  ta  có thể kiểm tra xem  server  ảo có hoạt động như mong đợi hay không:
- nano /var/www/your_domain/index.html 
Đưa nội dung sau vào file này:
<html>   <head>     <title>your_domain website</title>   </head>   <body>     <h1>Hello World!</h1>      <p>This is the landing page of <strong>your_domain</strong>.</p>   </body> </html> Bây giờ hãy truy cập trình duyệt của bạn và truy cập lại domain hoặc địa chỉ IP của server của bạn:
http://server_domain_or_IP Bạn sẽ thấy một trang như thế này:
Bước 5 - Kiểm tra PHP với Apache
Bây giờ ta sẽ tạo một kịch bản thử nghiệm PHP để xác nhận Apache có thể xử lý và xử lý các yêu cầu đối với file PHP.
 Tạo một file  mới có tên info.php bên trong folder  root  web tùy chỉnh của bạn:
- nano /var/www/your_domain/info.php 
Thao tác này sẽ mở một file trống. Thêm nội dung sau vào bên trong file :
<?php phpinfo(); Khi bạn hoàn tất, hãy lưu file .
 Truy cập  trình duyệt web  và truy cập domain  hoặc địa chỉ IP của  server , theo sau là tên tập lệnh, trong trường hợp này là info.php :
http://server_domain_or_IP/info.php Bạn sẽ thấy một trang tương tự như sau:
 Sau khi kiểm tra thông tin liên quan về  server  PHP của bạn thông qua trang đó, tốt nhất là xóa file  bạn đã tạo vì nó chứa thông tin nhạy cảm về môi trường PHP của bạn - và  server  Ubuntu của bạn. Bạn có thể sử dụng rm  để thực hiện :
- sudo rm /var/www/your_domain/info.php 
Hướng dẫn liên quan
Dưới đây là các liên kết đến các hướng dẫn chi tiết hơn liên quan đến hướng dẫn này:
- Cài đặt server ban đầu trên Ubuntu 20.04
- Quản lý bản ghi DNS trên DigitalOcean
- Cách cài đặt ngăn xếp Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 20.04
- Cách bảo mật Apache bằng Let's Encrypt trên Ubuntu 20.04
Các tin liên quan
Cách tạo server Minecraft trên Ubuntu 18.042020-05-07
Cách tạo server Minecraft trên Ubuntu 20.04
2020-05-07
Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 20.04
2020-04-29
Cách cài đặt Linux, Nginx, MySQL, PHP ( LEMP) trên Ubuntu 20.04
2020-04-29
Thiết lập bảo mật server quan trọng với Ubuntu 20.04
2020-04-23
Cách cài đặt Linux, Nginx, MySQL, PHP (LEMP) trên CentOS 7
2020-04-21
Cách cài đặt Linux, Apache, MariaDB, PHP (LAMP) trên CentOS 8 [Quickstart]
2020-04-16
Cách cài đặt Linux, Nginx, MySQL, PHP (LEMP) trên CentOS 8 [Quickstart]
2020-04-16
Cách theo dõi tình trạng server với Checkmk trên Ubuntu 18.04
2020-04-16
Cách cài đặt server phát nhạc trực tuyến Ampache trên Ubuntu 18.04
2020-04-08
 

