Hướng dẫn cài đặt LAMP trên Ubuntu cho người mới bắt đầu

Hướng dẫn này chỉ cho bạn cách cài đặt LAMP trên Ubuntu 20.04 LTS. Đây là một bộ công cụ phần mềm đi kèm. LAMP là viết tắt của Linux, Apache, MariaDB / MySQL và PHP, tất cả đều là mã nguồn mở và sử dụng miễn phí.

LAMP là ngăn xếp phần mềm phổ biến nhất cho các trang web động và ứng dụng web. Linux là hệ điều hành, Apache là máy chủ web, MariaDB / MySQL là máy chủ cơ sở dữ liệu và PHP là ngôn ngữ kịch bản phía máy chủ chịu trách nhiệm tạo các trang web động.

yêu cầu

Để làm theo các hướng dẫn này, Ubuntu 20.04 phải đang chạy trên máy tính cục bộ của bạn hoặc trên máy chủ từ xa.

Ngoài ra, bạn có thể xem xét một VPS (Máy chủ riêng ảo) hoặc thiết lập LAMP với một tên miền.

Các bước cài đặt LAMP trên Ubuntu

Bước 1: Cập nhật gói phần mềm

Trước khi cài đặt LAMP, bạn nên cập nhật gói và kho lưu trữ. Chạy các lệnh sau trên Ubuntu 20.04:

sudo apt update 
 sudo apt upgrade

Bước 2: Cài đặt Máy chủ Web Apache

Nhập lệnh sau để cài đặt máy chủ web Apache. Gói apache2-utils cài đặt một số tiện ích hữu ích như công cụ điểm chuẩn máy chủ Apache HTTP.

sudo apt install -y apache2 apache2-utils

Sau khi cài đặt, Apache sẽ tự động khởi động. Kiểm tra trạng thái với systemctl.

systemctl status apache2

Đầu ra mẫu:

apache2.service - The Apache HTTP Server
      Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
      Active: active (running) since Sat 2020-04-11 11:31:31 CST; 2s ago
        Docs: https://httpd.apache.org/docs/2.4/
     Process: 53003 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
    Main PID: 53011 (apache2)
       Tasks: 55 (limit: 19072)
      Memory: 6.4M
      CGroup: /system.slice/apache2.service
              ├─53011 /usr/sbin/apache2 -k start
              ├─53012 /usr/sbin/apache2 -k start
              └─53013 /usr/sbin/apache2 -k start

đề xuất: Nếu lệnh trên không kết thúc ngay lập tức, bạn có thể nhấn phím Q. để giành lại quyền kiểm soát thiết bị đầu cuối.

Nếu nó không hoạt động, hãy sử dụng nó systemctl khởi đầu.

sudo systemctl start apache2

Bạn cũng nên cho phép Apache khởi động tự động khi khởi động hệ thống.

sudo systemctl enable apache2

Kiểm tra phiên bản Apache:

apache2 -v

Đầu ra:

Server version: Apache/2.4.41 (Ubuntu) 
 Server built: 2020-03-05T18:51:00

Bây giờ hãy nhập địa chỉ IP công cộng của máy chủ Ubuntu 20.04 vào thanh địa chỉ của trình duyệt của bạn. Bạn xem trang “Nó thành công!”Điều này có nghĩa là máy chủ web Apache đang chạy bình thường. Nếu bạn đang cài đặt LAMP trên máy Ubuntu 20.04 cục bộ, hãy nhập thông tin sau 127.0.0.1 hoặc là localhost trong thanh địa chỉ của trình duyệt.

Nhập địa chỉ IP công cộng của máy chủ Ubuntu 20.04 vào thanh địa chỉ của trình duyệt
Nhập địa chỉ IP công cộng của máy chủ Ubuntu 20.04 vào thanh địa chỉ của trình duyệt

Nếu kết nối bị từ chối hoặc không thể thiết lập, có thể có tường lửa ngăn các yêu cầu đến cổng TCP 80. Nếu bạn đang sử dụng tường lửa iptablesBạn cần chạy lệnh sau để mở cổng TCP 80.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

Nếu bạn đang sử dụng tường lửa UFW, hãy chạy lệnh này để mở cổng TCP 80.

sudo ufw allow http

Bây giờ bạn phải đặt dữ liệu www (Người dùng Apache) sở hữu gốc tài liệu (còn được gọi là gốc web). Theo mặc định, nó thuộc về người dùng root.

sudo chown www-data:www-data /var/www/html/ -R

Theo mặc định, Apache sử dụng tên máy chủ hệ thống làm tên máy chủ toàn cầu. Nếu bạn không thể phân giải tên máy chủ hệ thống trong DNS, bạn có thể nhận được thông báo lỗi sau khi chạy lệnh sudo apache2ctl -t.

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

Để giải quyết vấn đề này, bạn có thể dán tên máy chủ toàn cầu vào Apache. Sử dụng trình chỉnh sửa dòng lệnh Nano để tạo tệp cấu hình mới.

sudo nano /etc/apache2/conf-available/servername.conf

Thêm dòng sau vào tệp này.

ServerName localhost

Lưu và đóng tập tin. Nhấn để lưu tệp trong trình chỉnh sửa nano Ctrl + O., sau đó nhấn Đi vào Xác nhận. Để thoát, nhấn Ctrl + X.. Sau đó kích hoạt tệp cấu hình này.

sudo a2enconf servername.conf

Tải lại Apache để các thay đổi có hiệu lực.

sudo systemctl reload apache2

Bây giờ hãy chạy lại lệnh sudo apache2ctl -tThông báo lỗi trên không xuất hiện.

Bước 3: Cài đặt máy chủ cơ sở dữ liệu MariaDB

MariaDB là giải pháp thay thế cho MySQL. 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 sợ rằng Oracle có thể biến MySQL thành một sản phẩm mã nguồn đóng. Nhập lệnh sau để cài đặt MariaDB trên Ubuntu 20.04.

sudo apt install mariadb-server mariadb-client

Sau khi cài đặt, máy chủ MariaDB sẽ tự động khởi động. Sử dụng systemctl để kiểm tra trạng thái.

systemctl status mariadb

Đầu ra:

mariadb.service - MariaDB 10.3.22 database server
      Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
      Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago
        Docs: man:mysqld(8)
              https://mariadb.com/kb/en/library/systemd/
    Main PID: 9161 (mysqld)
      Status: "Taking your SQL requests now..."
       Tasks: 31 (limit: 9451)
      Memory: 64.7M
      CGroup: /system.slice/mariadb.service
              └─9161 /usr/sbin/mysqld

Nếu nó không hoạt động, hãy bắt đầu nó bằng lệnh sau:

sudo systemctl start mariadb

Làm như sau để cho phép MariaDB tự động khởi động khi khởi động:

sudo systemctl enable mariadb

Bây giờ chạy cài đặt tập lệnh bảo mật sau.

sudo mysql_secure_installation

Bạn sẽ được yêu cầu nhập mật khẩu gốc MariaDB. cắm chìa khóa Đi vào vì mật khẩu gốc chưa được đặt. Sau đó vào y để đặt mật khẩu gốc cho máy chủ MariaDB.

Nhập y để đặt mật khẩu gốc cho máy chủ MariaDB
Nhập y để đặt mật khẩu gốc cho máy chủ MariaDB

Tiếp theo bạn có thể nhấn Đi vào Để trả lời bất kỳ câu hỏi nào còn lại, người dùng ẩn danh bị xóa, đăng nhập gốc từ xa bị vô hiệu hóa và cơ sở dữ liệu thử nghiệm bị xóa. Bước này là yêu cầu cơ bản để bảo mật cơ sở dữ liệu MariaDB. (Lưu ý rằng Y. được viết hoa, nghĩa là đây là câu trả lời mặc định.

Bạn có thể nhấn Enter để trả lời bất kỳ câu hỏi nào khác
Bạn có thể nhấn Enter để trả lời bất kỳ câu hỏi nào khác

Theo mặc định, gói MariaDB trên Ubuntu sử dụng unix_socket Để xác thực đăng nhập của người dùng, về cơ bản có nghĩa là bạn có thể sử dụng tên người dùng và mật khẩu của hệ điều hành để đăng nhập vào bảng điều khiển MariaDB. Vì vậy, bạn có thể chạy lệnh sau để đăng nhập mà không cần cung cấp mật khẩu gốc MariaDB.

sudo mariadb -u root

Để thoát, hãy làm như sau:

exit;

Kiểm tra thông tin phiên bản của máy chủ MariaDB.

mariadb --version

Như bạn có thể thấy, MariaDB 10.3.22 đã được cài đặt.

mariadb Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Bước 4: Cài đặt PHP7.4

Tại thời điểm viết bài này, PHP7.4 là phiên bản ổn định mới nhất của PHP. Nhập lệnh sau để cài đặt PHP7.4 và một số mô-đun PHP phổ biến.

sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

Kích hoạt mô-đun Apache php7.4 và khởi động lại máy chủ web Apache.

sudo a2enmod php7.4 
 sudo systemctl restart apache2

Kiểm tra thông tin phiên bản PHP.

php --version

Đầu ra:

PHP 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

Để kiểm tra các tập lệnh PHP với máy chủ Apache, bạn cần tạo một tệp info.php trong thư mục gốc của tài liệu.

sudo nano /var/www/html/info.php

Dán mã PHP sau vào tệp.

<?php phpinfo(); ?>

Nhấn để lưu tệp trong trình soạn thảo văn bản nano Ctrl + O., sau đó nhấn Đi vào Xác nhận. Để thoát, nhấn Ctrl + X.. Bây giờ, hãy nhập vào thanh địa chỉ của trình duyệt Địa chỉ IP máy chủ / info.php. Thay thế Địa chỉ IP máy chủ với IP thực của bạn. Nếu bạn đã làm theo các hướng dẫn này trên máy tính cục bộ của mình, hãy nhập 127.0.0.1/info.php hoặc là localhost / info.php.

Bạn sẽ thấy thông tin PHP của máy chủ. Điều này có nghĩa là các tập lệnh PHP có thể chạy đúng trên máy chủ web Apache.

Thông tin PHP của máy chủ
Thông tin PHP của máy chủ

Cách chạy PHP-FPM với Apache

Về cơ bản có hai cách để chạy mã PHP với máy chủ web Apache:

  • Mô-đun PHP của Apache
  • PHP-FPM

Trong các bước trên, mô-đun Apache PHP7.4 được sử dụng để xử lý mã PHP, điều này thường ổn. Tuy nhiên, trong một số trường hợp, bạn có thể cần chạy mã PHP bằng PHP-FPM để thay thế. Tìm hiểu làm thế nào để làm điều đó.

Tắt mô-đun Apache PHP7.4.

sudo a2dismod php7.4

Cài đặt PHP-FPM.

sudo apt install php7.4-fpm

Kích hoạt mô-đun setenvifproxy_fcgi.

sudo a2enmod proxy_fcgi setenvif

Kích hoạt tệp cấu hình /etc/apache2/conf-available/php7.4-fpm.conf.

sudo a2enconf php7.4-fpm

Khởi động lại Apache để các thay đổi có hiệu lực.

sudo systemctl restart apache2

Vâng khi bạn làm mới trang info.php Trong trình duyệt, bạn có thể thấy rằng API máy chủ đã được thay đổi bởi Trình xử lý Apache 2.0 Xa FPM / FastCGIĐiều này có nghĩa là máy chủ web Apache chuyển tiếp các yêu cầu PHP tới PHP-FPM.

API máy chủ đã được thay đổi từ Apache 2.0 Handler thành FPM / FastCGI
API máy chủ đã được thay đổi từ Apache 2.0 Handler thành FPM / FastCGI

Xin chúc mừng! Bạn đã cài đặt thành công LAMP (Apache, MariaDB và PHP7.4) trên Ubuntu 20.04. Vì lý do bảo mật máy chủ, bạn nên xóa tệp info.php ngay để tránh những con mắt tò mò.

sudo rm /var/www/html/info.php

Xem thêm:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *