Nếu bạn đang sử dụng web server và dự định cài đặt PhpMyAdmin trên CentOS 7, bạn cần phải cài đặt LAMP Stack để đảm bảo PhpMyAdmin hoạt động chính xác. LAMP Stack là gì? Cách cài đặt LAMP Stack trên CentOS 7 ra sao? Tất cả những câu hỏi này sẽ được Tino Group trả lời và hướng dẫn bạn cách thực hiện trong bài viết nhé!
Tìm hiểu về LAMP Stack
LAMP Stack là gì?
LAMP Stack không phải là một phần mềm hay một dịch vụ đơn lẻ, mà là gói cài đặt nhiều dịch vụ hỗ trợ cho hệ điều hành Linux bao gồm: Apache -web server, MySQL hoặc MariaDB – cơ sở dữ liệu/ database và PHP – ngôn ngữ lập trình hỗ trợ rất tốt cho các dịch vụ website. Bạn cũng có thể dễ dàng thấy rằng LAMP là viết tắt chữ cái đầu tiên của các dịch vụ trên.
Những điều cần chuẩn bị khi cài đặt LAMP Stack trên CentOS 7
Trước khi bạn tiếp tục đọc bài và làm theo các hướng dẫn của Tino Group, điều đầu tiên bạn nên làm là kiểm tra lại xem, hệ điều hành và phiên bản sử dụng của bạn có phải là CentOS 7 hay không. Những điều tiếp theo bạn cần chuẩn bị là:
- Tài khoản có toàn quyền truy cập hệ thống hoặc ít nhất là người dùng được cấp quyền sudo.
- Biết cách để sử dụng SSH và công cụ hỗ trợ SSH như PuTTy
- Gói yum, RPM thường sẽ có trong chế độ mặc định
Cách cài đặt LAMP Stack trên CentOS 7
Cập nhật gói yum
Để đảm bảo mọi hoạt động trên hệ thống được tốt nhất, bạn nên cập nhật lại gói yum cũng như kiểm tra các cài đặt khác và cập nhật chúng nếu có bản mới. Để cập nhật yum, bạn chạy lệnh sau:
sudo yum update
Yum là một gói quản lý với rất nhiều phần mềm miễn phí bạn giúp bạn có thể dễ dàng cài đặt chỉ với vài lệnh cơ bản.
Cài đặt Apache
Apache là một trong nhưng web server phổ biến nhất trên thế giới. Vì vậy, bạn có thể thể chọn Apache cho hosting của mình đấy. Nếu không thích Apache, bạn sẽ còn những dịch vụ khác như IIS, Nginx, Litespeed,…
Tuy nhiên, trong bài viết này, Tino Group sẽ hướng dẫn bạn cài đặt Apache trên CentOS 7 nhé. Bạn có thể cài đặt Apache một cách dễ dàng bằng gói yum chúng ta vừa cập nhật ở bước trên.
Bước 1: cài đặt Apache, để cài đặt, bạn chỉ cần chạy lệnh sau đây:
sudo yum install httpd
Quá trình cài đặt sẽ mất một khoản thời gian ngắn. Sau khi Apache được cài đặt xong trên server, chúng ta sẽ đến bước 2.
Bước 2: khởi động dịch vụ Apache, bạn cũng chỉ cần 1 lệnh duy nhất để chạy Apache như sau:
sudo systemctl start httpd.service
Bước 3: kiểm tra Apache đã được cài đặt hay chưa. Về mặt lý thuyết, chỉ với 2 lệnh trên bạn đã hoàn tất việc cài đặt Apache. Tuy nhiên, để chắc chắn hơn, bạn có thể kiểm tra Apache đã hoạt động trên server của bạn chưa bằng cách nhập địa chỉ IP công cộng hoặc địa chỉ tên miền của bạn lên trình duyệt và nhấn Enter để truy cập.
Nếu bạn thấy website của bạn hiển thị như trong ảnh là bạn đã cài đặt Apache thành công.
Bước 4: sau khi đã kiểm tra và chắc chắn rằng Apache đã hoạt động, bạn sẽ cần chạy thêm 1 lệnh để kích hoạt Apache mỗi khi khởi động:
sudo systemctl enable httpd.service
Cài đặt MySQL hoặc MariaDB
Tiếp theo, chúng ta sẽ cần cài đặt một phần mềm/ dịch vụ để quản lý cơ sở dữ liệu trên máy chủ. Bạn có thể sử dụng MySQL, nhưng Tino Group gợi ý bạn cài đặt MariaDB, một nhánh nhỏ của MySQL hoàn toàn miễn phí và có giao diện đồ hoạ dễ dàng sử dụng.
Bạn sẽ không cần làm quá nhiều thứ, vì yum đã hỗ trợ bạn trong việc cài đặt phần mềm, bạn chỉ cần chạy 1 dòng lệnh yêu cầu yum tải sau đó tự cài đặt như sau:
Bước 1: cài đặt MariaDB
sudo yum install mariadb-server mariadb
Bước 2: sau khi quá trình cài đặt hoàn tất, chúng ta sẽ cần phải cần khởi động MariaDB, bạn chỉ cần chạy dòng lệnh:
sudo systemctl start mariadb
Bước 3: cơ sở dữ liệu là nơi lưu toàn bộ những thứ quan trọng trên server. Vì thế, bạn sẽ cần bảo mật cho cơ sở dữ liệu của mình bằng một script như sau:
sudo mysql_secure_installation
Sau khi chạy script bạn sẽ bị yêu cầu nhập mật khẩu tài khoản root vào. Nếu không có mật khẩu, bạn để trống và nhấn Enter; nếu có, bạn nhập mật khẩu vào và tiếp tục nhấn Y để đồng ý.
Tiếp theo, bạn sẽ được yêu cầu tạo mật khẩu và nhập lại mật khẩu lần nữa. Khi màn hình hiện lên dòng chữ như bên dưới là bạn đã thành công.
Password updated successfully!
Reloading privilege tables..
... Success!
Cài đặt PHP
Một trong những cấu phần quan trọng có thể hỗ trợ cho việc kết nối đến cơ sở dữ liệu, xử lý các tác vụ cho website và hiển thị nội dung. Quá trình cài đặt của PHP cũng rất đơn giản bạn chỉ cần làm theo hướng dẫn như sau:
Bước 1: Cài đặt PHP bằng lệnh yum. Gói cài đặt PHP này sẽ bao gồm cả gói php-mysql và bạn sẽ không cần cài đặt riêng lẻ:
sudo yum install php php-mysql
Bước 2: để PHP hoạt động ổn định và không xảy ra bất cứ lỗi nào, bạn nên khởi động lại Apache để server có thể hoạt động tốt nhất với PHP:
sudo systemctl restart httpd.service
Cài đặt các module của PHP
Về cơ bản, PHP đã đủ để dùng. Tuy nhiên, để server của bạn có chất lượng hoạt động cao hơn, Tino Group khuyến khích bạn cài đặt thêm một số module như sau:
- php-bcmath: module hỗ trợ PHP sử dụng thư viện bcmath.
- php-cli: giao diện dòng lệnh cho PHP
- php-common: các tệp phổ thông PHP
- php-devel: một số file cần thiết để xây dựng extension PHP
- php-embedded: một thư viện để nhúng một số ứng dụng
- php-fpm: trình hỗ trợ quản lý PHP FastCGI
Có vẻ đây là một công việc khó.Tuy nhiên, bạn chỉ cần cài đặt bằng 1 dòng lệnh duy nhất với sự hỗ trợ của yum.
Ví dụ, bạn muốn cài đặt PHP-FPM, bạn chạy dòng lệnh như sau:
sudo yum install php-fpm
Nếu bạn muốn kiểm tra những module khác của PHP có chức năng gì, bạn chạy dòng lệnh phía dưới. Ví dụ bạ muốn tìm hiểu thêm thông tin về PHP-FPM.
- yum info tên gói bạn muốn cài đặt.
yum info php-fpm
Màn hình sẽ trả lại cho bạn kết quả như sau:
Nếu bạn muốn cài đặt cùng lúc nhiều gói PHP khác nhau, bạn chạy lệnh yum install, mỗi gói bạn tách ra bằng khoảng trống ví dụ như:
sudo yum install php-fpm php-common
Kiểm tra PHP ổn định trên web server hay chưa
Để kiểm tra xem các cài đặt PHP của bạn có chính xác hay không và có hoạt động ổn định với Apache hay không, bạn cần phải tạo 1 file script để Apache có thể hiểu và chạy lệnh.
Tối nhất, bạn nên tạo file trong web root. Thông thường, bạn có thể tìm thấy web root nằm trong đường dẫn /var/www/html/ của CentOS 7. Các bước thực hiện như sau:
Bước 1: tạo file script info.php. bạn có thể chọn texteditor là nano hay vi, vim tùy theo bạn quen sử dụng cái nào hơn nhé!
sudo nano /var/www/html/info.php
Bước 2: bạn tạo một file phpinfo để xem thông tin PHP trong server của bạn.
<?php phpinfo(); ?>
Sau khi tạo xong, bạn lưu và đóng file lại.
Bước 3: để chắc chắn bạn không bị chặn script, bạn mở cả HTTP và HTTPS như sau:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Bước 4: truy cập vào địa chỉ IP hoặc tên miền của bạn để xem thông tin của PHP, ví dụ như sau:
https://maitruclam.com/info.php
Trang web của bạn hiện ra những thông tin như trong ảnh, bạn có thể kiểm tra lại các thông tin xem đúng với các cài đặt của bạn hay chưa. Sau đó, để đảm bảo chúng ta sẽ xóa file info đi để tránh tình trạng kẻ gian tìm ra và sử dụng thông tin để gây hại đến server của bạn.
Bước 5: để xóa file info, bạn chạy lệnh sau đây:
sudo rm /var/www/html/info.php
Vậy là chúng ta đã cùng nhau hoàn tất “hành trình” cài đặt LAMP Stack trên CentOS 7 rồi. Tino Group chúc bạn may mắn và thực hiện thành công!
Những câu hỏi thường gặp về cài đặt LAMP Stack trên CentOS 7
Cách xóa phiên bản yum cũ như thế nào?
Để xóa phiên bản cũ của yum nhằm tải lại phiên bản mới sạch hơn, bạn chạy lệnh sau: sudo yum clean all
LEMP là gì?
LEMP là viết tắt của gói cài đặt hỗ trợ Linux gồm: Nginx, MySQL và PHP. Về mặt chức năng, LEMP gần như giống với LAMP.
Sự khác biệt giữa LAMP và LEMP ra sao?
Điểm khác biệt duy nhất giữa LAMP và LEMP chính là web server. Trong khi LAMP sử dụng Apache thì LEMP sử dụng Nginx.
Nên sử dụng Apache hay Nginx?
Không có phần mềm tốt nhất, chỉ có phần mềm phù hợp. Nếu bạn muốn một máy chủ web cổ điển và có thời gian phát triển lâu năm Apache là lựa chọn phù hợp với bạn. Trong trường hợp bạn muốn khả năng xử lý tối ưu và hiện đại, Nginx sẽ hợp với bạn hơn.