Cài đặt Linux Apache MySQL PHP (LAMP) On CentOS 7
LAMP là một bộ phần mềm nguồn mở thường được cài đặt cùng nhau để cho phép server lưu trữ các trang web động và ứng dụng web. Thuật ngữ này thực sự là một từ viết tắt đại diện cho hệ điều hành L inux, với web server A pache. Dữ liệu trang web được lưu trữ trong database M ySQL (sử dụng MariaDB) và nội dung động được xử lý bởi P HP. Trong hướng dẫn này, ta sẽ cài đặt LAMP trên VPS CentOS 7.Yêu cầu
Trước khi bắt đầu với hướng dẫn này, bạn nên cài đặt một account user riêng, không phải root trên server. Bạn có thể xem cách thực hiện việc này bằng cách hoàn thành các bước 1-4 trong cài đặt server ban đầu cho CentOS 7 .
Bước một - Cài đặt Apache
Web server Apache hiện là web server phổ biến nhất trên thế giới, trở thành lựa chọn mặc định tuyệt vời để lưu trữ một trang web.
Ta có thể cài đặt Apache dễ dàng bằng trình quản lý gói của CentOS, yum
. Trình quản lý gói cho phép ta cài đặt hầu hết phần mềm một cách dễ dàng từ repository do CentOS duy trì. Bạn có thể tìm hiểu thêm về cách sử dụng yum
tại đây.
Đối với mục đích , ta có thể bắt đầu bằng lệnh các lệnh sau:
sudo yum install httpd
Vì ta đang sử dụng sudo
, các thao tác này được thực thi với quyền root. Nó sẽ yêu cầu bạn nhập password của regular user (user-thường) để xác minh.
Sau đó, web server đã được cài đặt.
Sau khi cài đặt xong, bạn có thể khởi động Apache trên VPS của bạn:
sudo systemctl start httpd.service
Bạn có thể kiểm tra để xác minh mọi thứ đã diễn ra theo kế hoạch bằng cách truy cập địa chỉ IP công cộng của server trong trình duyệt web (xem ghi chú dưới để tìm địa chỉ IP công cộng của bạn là gì nếu không có):
http://your_server_IP_address/
Bạn sẽ thấy trang web CentOS 7 Apache mặc định, trang này dành cho mục đích thông tin và thử nghiệm. Nó trông giống như sau:
Nếu bạn thấy trang này, thì web server hiện đã được cài đặt chính xác.
Điều cuối cùng bạn cần làm là kích hoạt Apache khởi động khi server khởi động. Sử dụng lệnh sau để thực hiện:
sudo systemctl enable httpd.service
Cách Tìm Địa chỉ IP Công cộng của Server
Nếu bạn không biết địa chỉ IP công cộng của server là gì, có một số cách tìm. Thông thường, đây là địa chỉ bạn sử dụng để kết nối với server thông qua SSH.
Từ dòng lệnh, bạn có thể tìm thấy điều này theo một vài cách. Đầu tiên, bạn có thể sử dụng các công cụ iproute2
để lấy địa chỉ của bạn bằng lệnh:
ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
Kết quả là một hoặc hai dòng, đều là địa chỉ chính xác, nhưng máy tính của bạn có thể chỉ sử dụng được một trong số chúng, vì vậy hãy thử từng địa chỉ.
Cách khác là dùng lệnh:
curl http://icanhazip.com
Nếu có IP hãy nhập vào trình duyệt web để truy cập server.
Bước hai - Cài đặt MySQL (MariaDB)
Bây giờ ta đã cài đặt và chạy web server, đã đến lúc cài đặt MariaDB, một trình thay thế MySQL. MariaDB là một nhánh của hệ thống quản lý database quan hệ MySQL do cộng đồng phát triển. Về cơ bản, nó sẽ tổ chức và cung cấp quyền truy cập vào database nơi trang web có thể lưu trữ thông tin.
Cài đặt MariaDB với yum:
sudo yum install mariadb-server mariadb
Khi quá trình cài đặt hoàn tất, ta cần khởi động MariaDB bằng lệnh sau:
sudo systemctl start mariadb
Bây giờ database MySQL đang chạy, ta muốn chạy một tập lệnh bảo mật đơn giản sẽ loại bỏ một số mặc định nguy hiểm:
sudo mysql_secure_installation
Dấu nhắc sẽ yêu cầu bạn nhập password root của mysql. Vì bạn vừa cài đặt MySQL, nếu không có đặt password, hãy để trống bằng cách nhấn enter. Sau đó, dấu nhắc sẽ hỏi bạn có muốn đặt password root hay không. Tiếp tục và nhập Y
, và làm theo hướng dẫn:
Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorization. New password: password Re-enter new password: password Password updated successfully! Reloading privilege tables.. ... Success!
Đối với các câu hỏi còn lại, bạn chỉ cần nhấn phím "ENTER" qua mỗi dấu nhắc để chấp nhận các giá trị mặc định. Thao tác này sẽ xóa một số user và database mẫu, vô hiệu hóa đăng nhập root từ xa và tải các rule (luật) mới này để MySQL áp dụng ngay những thay đổi đã thực hiện.
Điều cuối cùng bạn cần làm là kích hoạt MariaDB để bắt đầu khi server khởi động. Sử dụng lệnh sau để thực hiện:
sudo systemctl enable mariadb.service
Đến đây, hệ thống database của bạn đã được cài đặt xong và ta có thể tiếp tục.
Bước 3 - Cài đặt PHP
PHP là thành phần cài đặt sẽ xử lý mã để hiển thị nội dung động. Nó có thể chạy các tập lệnh, kết nối với database MySQL để lấy thông tin và chuyển nội dung đã xử lý cho web server để hiển thị.
Ta có thể tận dụng hệ thống yum
để cài đặt các thành phần, sẽ bao gồm gói php-mysql:
sudo yum install php php-mysql
Điều này sẽ cài đặt PHP mà không gặp bất kỳ vấn đề gì. Ta cần khởi động lại web server Apache để nó hoạt động với PHP. Bạn có thể thực hiện việc này bằng lệnh:
sudo systemctl restart httpd.service
Cài đặt module PHP
Để nâng cao chức năng của PHP, ta có thể tùy chọn cài đặt thêm một số module.
Để xem các tùy chọn có sẵn cho các module và thư viện PHP, bạn có thể nhập mã này vào hệ thống của bạn:
yum search php-
Kết quả là tất cả các thành phần tùy chọn mà bạn có thể cài đặt. Nó sẽ cung cấp các mô tả ngắn:
php-bcmath.x86_64 : A module for PHP applications for using the bcmath library php-cli.x86_64 : Command-line interface for PHP php-common.x86_64 : Common files for PHP php-dba.x86_64 : A database abstraction layer module for PHP applications php-devel.x86_64 : Files needed for building PHP extensions php-embedded.x86_64 : PHP library for embedding in applications php-enchant.x86_64 : Enchant spelling extension for PHP applications php-fpm.x86_64 : PHP FastCGI Process Manager php-gd.x86_64 : A module for PHP applications for using the gd graphics library . . .
Để biết thêm thông tin về chức năng của từng module, bạn có thể tìm kiếm trên internet hoặc bạn có thể xem mô tả nhiều hơn trong gói bằng lệnh:
yum info package_name
Ví dụ: để tìm hiểu module php-fpm
làm gì, ta có thể nhập:
yum info php-fpm
Bạn sẽ tìm thấy gì đó giống như sau:
. . . Summary : PHP FastCGI Process Manager URL : http://www.php.net/ License : PHP and Zend and BSD Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI : implementation with some additional features useful for sites of : any size, especially busier sites.
Nếu sau khi xem, bạn cần cài đặt một gói phần mềm, bạn có thể thực hiện bằng cách sử dụng lệnh yum install
giống như cách ta đã làm cho phần mềm khác.
Nếu quyết định cài php-fpm
, ta nhập:
sudo yum install php-fpm
Nếu muốn cài đặt nhiều module, bạn có thể thực hiện bằng cách liệt kê từng module, được phân tách bằng dấu cách, sau lệnh yum install
, như sau:
sudo yum install package1 package2 ...
Đến đây, LAMP của bạn đã được cài đặt và cấu hình. Tuy nhiên, ta vẫn nên kiểm tra PHP.
Bước 4 - Kiểm tra PHP processor (bộ-xử-lý-PHP) trên Server Web của bạn
Để kiểm tra xem hệ thống có được cấu hình đúng cho PHP hay không, ta có thể tạo một tập lệnh PHP rất cơ bản.
Ta sẽ gọi script này là info.php
. Để Apache có thể tìm thấy file và phân phát nó một cách chính xác, nó phải được lưu vào một folder xác định, được gọi là “web root”.
Trong CentOS 7, folder này được đặt tại /var/www/html/
. Ta có thể tạo file tại vị trí đó bằng lệnh:
sudo vi /var/www/html/info.php
Thao tác này sẽ mở một file trống. Ta muốn đặt văn bản sau, là mã PHP hợp lệ, bên trong file:
<?php phpinfo(); ?>
Khi bạn hoàn tất, hãy lưu file.
Nếu bạn đang chạy firewall, hãy chạy các lệnh sau để cho phép truy cập HTTP và HTTPS:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
Bây giờ ta có thể kiểm tra xem web server có thể hiển thị chính xác nội dung được tạo bởi tập lệnh PHP hay không. Để thử điều này, ta chỉ cần truy cập trang này trong trình duyệt web . Ta cần địa chỉ IP công cộng của server.
Địa chỉ ta đến sẽ là:
http://your_server_IP_address/info.php
Trang mà bạn đến sẽ trông giống như sau:
Về cơ bản, trang này cung cấp cho bạn thông tin về server . Nó có thể cần thiết để biết thông tin hoặc kiểm tra cài đặt.
Nếu điều này thành công, thì PHP của bạn đang hoạt động như mong đợi.
Bạn có thể xóa file này sau khi kiểm tra vì nó có thể cung cấp thông tin về server cho user lạ. Để làm điều này, có thể chạy lệnh:
sudo rm /var/www/html/info.php
Bạn luôn có thể tạo lại trang này nếu sau này cần truy cập lại thông tin.
Kết luận
Đến đây bạn đã cài đặt LAMP, bạn có nhiều lựa chọn để làm gì tiếp theo. Về cơ bản, bạn đã cài đặt một nền tảng cho phép bạn cài đặt hầu hết các loại trang web và phần mềm web trên server.
Các tin trước
Cài đặt Bảo mật cơ bản cho CentOS 7 2014-07-21
Cấu hình firewall IP V6 trên Linux VPS 2014-04-01
Cài đặt và sử dụng yum repositories trên Centos-6 vps 2013-10-01
Sử dụng SSH để kết nối tới Remote Server trong Ubuntu 2013-09-10
Backup postgresql databases trên Ubuntu vps 2013-08-28
Sử dụng Cron để tự động hóa các công việc việc trên server 2013-08-23
Bảo mật postgresql trên Ubuntu vps 2013-08-22
Sử dụng sftp-to-securely-transfer-files với remote-server 2013-08-13
Quản trị packages trong Ubuntu và Debian với apt-get-apt-cache 2013-08-06
Sử dụng roles và quản lý cấp quyền trong postgresql trên vps 2013-08-05