Chào mừng ngày giải phóng miền nam
  • Trang chủ
  • Hướng dẫn cài đặt LAMP(Linux (OS), Apache (Web Server), MariaDB (CSDL), và PHP) trên CentOS 7

Hướng dẫn cài đặt LAMP(Linux (OS), Apache (Web Server), MariaDB (CSDL), và PHP) trên CentOS 7

LAMP là gì ?

LAMP (viết tắt của Linux (OS), Apache (Web Server), MariaDB (CSDL) ,PHP), là một nhóm các phần mềm mã nguồn mở được cài đặt với nhau để xử lý code PHP, còn Cơ Sở Dữ Liệu dịch vụ sẽ là MariaDB.

Trước đây mọi người hay dùng MySQL để làm dịch vụ CSDL nhưng năm 2008 MySQL đã bị Sun Microsystem mua lại, còn MariaDB được phát triển tách nhánh (fork) và tiếp tục duy trì tính mã nguồn mở. Chính vì thế mà mọi người vẫn hay dùng MariaDB để chỉ các CSDL dữ liệu mã nguồn mở, chứ ít ai còn dùng MySQL

Trong bài viết này VDO Data sẽ chia sẻ với mọi người cách cài đặt LAMP trên CentOS 7, cụ thể cách cài đặt LAP stack trên các phiên bản :

  • Apache 2.4
  • PHP 7.0
  • MariaDB 10.2
  • Linux (CentOS 7)

Việc đầu tiên bạn cần làm đó là cài đặt LAB trên máy chủ ảo / máy chủ server / máy ảo đều được

 

Có thể bạn cũng quan tâm chủ đề khác
Hướng dẫn truy cập vào VPS Windows thông qua Remote Desktop

1. Cài đặt Apache Web Server

Chúng ta sẽ cài đặt web server Apache qua chương trình ‘yum‘. Mặc định khi cài Apache trên CentOS 7 , đó sẽ là phiên bản 2.4 .

# yum install httpd -y

Khởi động web server Apache và cấu hình startup service cho Apache.

# systemctl start httpd

# systemctl enable httpd

Kiểm tra phiên bản Apache vừa cài đặt trên CentOS 7.

# httpd -v

Server version: Apache/2.4.6 (CentOS)

Server built: Apr 20 2018 18:10:38

Kiểm tra dịch vụ Apache đã lắng nghe trên port 80 hay chưa.

# netstat -natp | grep httpd

tcp 0 0 :::80 :::* LISTEN 8441/httpd

Cấu hình rule firewall vào hệ thống web server Apache port 80/443 .

# iptables -A INPUT -p tcp –match multiport –dports 80,443 -j ACCEPT

Giờ ta sẽ kiểm tra bằng cách truy cập địa chỉ IP của VPS/Server, đó có thể là IP Public hay IP Private mạng nội bộ tuỳ thuộc vào hệ thống Web Server Apache của bạn.

http://<ip-address>

Bạn sẽ thấy trang thông báo mặc định của Apache như sau .

Nội dung file web mặc định khi bạn truy cập bằng địa chỉ IP Web Server Apache nằm ở thư mục : /var/www/html/

File cấu hình Apache

Ở bài viết này chúng ta không đi chi tiết việc tìm hiểu cấu hình nâng cao dịch vụ Apache. Mà chỉ tìm hiểu cài đặt cơ bản vì vậy bạn cần biết một số thông tin sau :

  • File cấu hình Apache: /etc/httpd/conf/httpd.conf
  • Thư mục chứa cấu hình phụ Apache: /etc/httpd/conf.d/
  • Thư mục log Apache: /var/log/httpd/
  • Thư mục web mặc định: /var/www/html/

Cấu hình VirtualHost Apache

Nếu bạn cần cấu hình Apache phục vụ xử lý request cho tên miền của bạn, thì bạn cần khai báo một VirtualHost. Tạo một file cấu hình ở thư mục /etc/httpd/conf.d, đặt tên ví dụ ‘lab.cuongquach.com.conf‘ (thay bằng tên miền website của bạn).

# vi /etc/httpd/conf.d/lab.cuongquach.com.conf

 

NameVirtualHost *:80

 

<VirtualHost *:80>

ServerName lab.cuongquach.com

ServerAlias www.lab.cuongquach.com

DocumentRoot /var/www/lab.cuongquach.com/public_html/

ErrorLog /var/log/httpd/error.log

CustomLog /var/log/httpd/access.log combined

</VirtualHost>

– Tạo thư mục cho website domain tương ứng.

# mkdir -p /var/www/lab.cuongquach.com/public_html/

2. Cách cài đặt dịch vụ Database – MariaDB

Bài viết này sẽ hướng dẫn cài đặt phiên bản CSDL MariaDB 10.2

Đầu tiên chúng ta sẽ khởi tạo thông tin Repository MariaDB để chương trình yum biết nguồn tải cài đặt MariaDB.

# vi /etc/yum.repos.d/MariaDB.repo

 

# MariaDB 10.2 CentOS repository list

# http://downloads.mariadb.org/mariadb/repositories/

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.2/centos7-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

Ta cho cập nhật thông tin về Repository MariaDB 10.2 mới được cấu hình ở file ‘MariaDB.repo‘. Sau đó thì ta cài đặt các gói chương trình của dịch vụ CSDL Mariadb 10.2 trên centos 7.

# yum repolist

# yum install MariaDB-server MariaDB-client MariaDB-devel -y

Ta sẽ khởi động dịch vụ MariaDB có tên dịch vụ là ‘mysql‘ trên CentOS 7 và thiết lập cho dịch vụ MariaDB khởi động khi Hệ Điều Hành Linux được khởi động.

# systemctl start mysql.service

# systemctl enable mysql.service

Chúng ta sẽ chạy chương trình script “mysql_secure_installation” ngay sau khi cài đặt MariaDB nhằm đạt được các mục tiêu sau :

  • Thay đổi password root.
  • Xoá bỏ user anonymous.
  • Tắt tính năng cho phép root login từ ngoài hệ thống.
  • Xoá bỏ database “test” và quyền truy cập nó.
  • Reload lại các table liên quan đến quyền hạn.

# mysql_secure_installation

 

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

 

In order to log into MariaDB to secure it, we’ll need the current

password for the root user. If you’ve just installed MariaDB, and

you haven’t set the root password yet, the password will be blank,

so you should just press enter here.

 

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 authorisation.

 

Set root password? [Y/n] Y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

… Success!

 

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them. This is intended only for testing, and to make the installation

go a bit smoother. You should remove them before moving into a

production environment.

 

Remove anonymous users? [Y/n] Y

… Success!

 

Normally, root should only be allowed to connect from ‘localhost’. This

ensures that someone cannot guess at the root password from the network.

 

Disallow root login remotely? [Y/n] Y

… Success!

 

By default, MariaDB comes with a database named ‘test’ that anyone can

access. This is also intended only for testing, and should be removed

before moving into a production environment.

 

Remove test database and access to it? [Y/n] Y

– Dropping test database…

… Success!

– Removing privileges on test database…

… Success!

 

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

 

Reload privilege tables now? [Y/n] Y

… Success!

 

Cleaning up…

 

All done! If you’ve completed all of the above steps, your MariaDB

installation should now be secure.

 

Thanks for using MariaDB!

Kiểm tra phiên bản MariaDB trên CentOS 7.

# mysql -V

mysql Ver 15.1 Distrib 10.2.14-MariaDB, for Linux (x86_64) using readline 5.1

Kiểm tra xem có tiến trình nào của MariaDB đang chạy hay không? Tên tiến trình sẽ là ‘mysqld‘.

# ps aux | grep -v “grep” | grep “mysqld”

mysql 24679 0.1 2.1 1893296 85380 ? Ssl 10:45 0:00 /usr/sbin/mysqld

Mặc định dịch vụ database MariaDB sẽ lắng nghe kết nối trên TCP Socket port 3306. Ngoại trừ trường hợp bạn dùng ‘unix socket‘, bỏ listen port 3306. Bạn có thể dùng lệnh ‘netstat’ hoặc lệnh ‘ss‘ để kiểm tra ứng dụng nào đang listen trên port nào của hệ thống.

# ss -lntp | grep “3306”

LISTEN 0 80 :::3306 :::* users:((“mysqld”,pid=24679,fd=20))

Thử đăng nhập user root với mật khẩu bạn đã set khi chạy ‘mysql_secure_installation‘.

# mysql -u root -p'<matkhau>’

 

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 16

Server version: 10.2.9-MariaDB MariaDB Server

 

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

 

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

 

MariaDB [(none)]>

3. Cài đặt PHP 7

Nếu bạn muốn cài đặt các phiên bản PHP cũ như PHP 5.5, 5.6 thì có thể tham khảo bài viết khác

Còn trong bài viết này chúng ta cũng sẽ sử dụng cách thức thao tác như ở bài viết link trên, để cài đặt PHP 7.1 .

Giờ ta sẽ cài repository của REMI.

# wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# rpm -Uvh remi-release-7*.rpm

Bây giờ ta sẽ kích hoạt repo remi sử dụng cho PHP 7.0 . Các bạn kéo xuống phần nội dung file ở section [remi-php70] , hãy kích hoạt ‘enabled=1‘.

# vi /etc/yum.repos.d/remi-php70.repo

[remi-php70]

name=Remi’s PHP 7.1 RPM repository for Enterprise Linux 7 – $basearch

#baseurl=http://rpms.remirepo.net/enterprise/7/php71/$basearch/

#mirrorlist=https://rpms.remirepo.net/enterprise/7/php71/httpsmirror

mirrorlist=http://cdn.remirepo.net/enterprise/7/php71/mirror

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

Giờ ta tiến hành cài đặt PHP 7.0 cùng một số module PHP hỗ trợ thường sử dụng.

# yum install –disablerepo=* –enablerepo=remi-php70 php php-mysql php-bcmath php-cli php-common php-devel php-embedded php-enchant php-mbstring php-mcrypt php-pdo php-xml -y

Kiểm tra phiên bản PHP trên hệ thống CentOS nào.

# php -v

PHP 7.0.30 (cli) (built: Apr 24 2018 21:28:23) ( NTS )

Copyright (c) 1997-2017 The PHP Group

Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

Giờ ta cần khởi động lại dịch vụ Apache để áp dụng chương trình module PHP 7 mới cài vào.

# systemctl restart httpd

Tiếp đến ta sẽ tạo một file thông tin để kiểm tra xem Apache xử lý được PHP code chưa.

# cd /var/www/lab.cuongquach.com/public_html/

# vi info.php

<?php

phpinfo();

?>

Giờ ta truy cập trang web domain của chúng ta file info.php trên trình duyệt web xem Apache đã xử lý được code PHP chưa nhé.

http://lab.cuongquach.com/info.php

Nếu bạn muốn truy cập file bằng địa chỉ IP của web server Apache thì hãy để ở thư mục : /var/www/html , mặc định global của Apache khai báo.

# cd /var/www/html/

# vi info.php

Tổng kết

Tài liệu được tham khảo bởi cuongquach.com, nếu bạn chưa cài đặt LAMP trên CentOS 7 thành công có thể liên hệ với kỹ thuật của công ty bán vps VDO DATA để được tư vấn, hỗ trợ nhé.

Chúc các bạn thành công !

>>> Các câu hỏi liên quan :

  • cài đặt LAMP

  • cài đặt lamp trên centos 7

  • hướng dẫn cài đặt lamp trên centos 7

  • lamp ubuntu

  • lamp server

  • cài đặt web server trên linux

  • lập trình php trên ubuntu

  • cài xampp trên ubuntu

  • lamp stack

0/5 (0 Reviews)

About Thanh Hồng

Thanh Hồng là một hot blogger công nghệ của VDO Data. Cô đã có 5 năm kinh nghiệm làm việc tại phòng Marketting và Sale tại VDO Data. Cô sở hữu rất nhiều website và blog liên quan đến công nghệ, dịch vụ máy chủ, sản phẩm worktion, phần mềm bản quyền,…Cô đã cố gắng học hỏi, tích lũy và truyền đạt hết những kinh nghiệm đó trong các bài viết chia sẻ của mình. Blog của Thanh Hồng là một trong những nguồn thông tin tốt nhất giúp bạn lựa chọn được một sản phẩm, dịch vụ công nghệ hoàn hảo. Đặc biệt vì đam mê tìm hiểu về công nghệ nên cô đã dành rất nhiều thời gian đi cập nhật các tin tức công nghệ mới, các giải pháp mới, hoàn hảo nhất phù hợp cho nhiều mô hình doanh nghiệp và chia sẻ chúng theo quan điểm thú vị của riêng mình.

Hotline tư vấn miễn phí