Hướng dẫn cài đặt Lighttpd với PHP-FPM và MariaDB trên CentOS 7

lighttpd là một mã nguồn mở máy chủ web được tối ưu hóa cho môi trường với tốc độ chậm trong khi tiêu chuẩn tuân thủ còn lại.

An ninh, tốc độ, tuân thủ, và linh hoạt – Đó là tất cả các mô tả về lighttpd. Nhanh chóng xác định lại hiệu quả của một máy chủ web; vì nó được thiết kế và tối ưu hóa cho môi trường hiệu suất cao. Với một bộ nhớ nhỏ so với các web-server, quản lý hiệu quả của CPU-load, và bộ tính năng tiên tiến (FastCGI, SCGI, Auth, Output-nén, URL-Rewriting và nhiều hơn nữa) lighttpd là giải pháp hoàn hảo cho mọi máy chủ đau khổ vấn đề tải.

I.Chuẩn bi 

Cài đặt kho epel và remi

Cập nhật hệ thống

# yum update -y

Trong CentOS 7.0 sử dụng Firewall-cmd, vì vậy ta sẽ tùy chỉnh nó bằng lệnh như sau.

Ví dụ ta mở công 80 và 3306

# firewall-cmd --permanent --zone=public --add-port=80/tcp
# firewall-cmd --permanent --zone=public --add-port=3306/tcp

Khởi động lại filewall

# firewall-cmd --reload

II.Tiến hành 

1. Cài đặt lighttpd

Gõ lệnh sau để cài đặt lighttpd

# yum -y install lighttpd

Khởi động dịch vụ và cho chạy cùng hệ thống

# systemctl enable  lighttpd.service
# systemctl start  lighttpd.service

Chạy lệnh sau để xem trạng thái của dịch vụ

# systemctl status lighttpd.service

Nếu gặp dòng sau nó yêu cầu sử dụng ipv6

(network.c.272) warning: please use server.use-ipv6 only for hostnames, not without server.bind / empty address; your config will break if the kernel default...V6_V6ONLY changes

Bạn chỉ việc truy cập vào file cấu hình và tắt ip-v6 đi

# nano /etc/lighttpd/lighttpd.conf

Gõ disable

server.use-ipv6 = "disable" 

Và khởi động lại lighttpd

# systemctl restart  lighttpd.service

Bây giờ ta dùng trình duyệt truy cập vào địa chỉ ip để xem kết quả http://ip-vps/

2. Cài đặt php-fpm và cấu hình để làm việc với lighttpd

Chạy lệnh sau để cài đặt php

# yum -y install php-fpm lighttpd-fastcgi

Ta chỉnh sửa user và group thành lighttpd

# nano /etc/php-fpm.d/www.conf
; RPM: apache Choosed to be able to access some dir as httpd
user = lighttpd
; RPM: Keep a group allowed to write in log dir.
group = lighttpd

Truy cập vào file php.ini

# nano /etc/php.ini

Bỏ dấu ghi chú của dòng sau

cgi.fix_pathinfo=1

Mở file  /etc/lighttpd/modules.conf

# nano /etc/lighttpd/modules.conf

Bỏ dấu ghi chú dòng sau để trỏ đường dẫn đến conf.d/fastcgi.conf

include "conf.d/fastcgi.conf"

Mở file /etc/lighttpd/conf.d/fastcgi.conf

# nano /etc/lighttpd/conf.d/fastcgi.conf

Và thêm các dòng từ số 6 đến số 12 định nghĩa sau

fastcgi.server += ( ".php" =>
        ((
                "host" => "127.0.0.1",
                "port" => "9000",
                "broken-scriptfilename" => "enable"
        ))
)

Khởi động php và chạy cùng hệ thống

# systemctl enable  php-fpm.service
# systemctl start  php-fpm.service

Khởi động lại lighttpd

# systemctl restart  lighttpd.service

Kiểm tra

Kiểm tra xem lighttpd và php đã làm việc với nhau chưa bằng cách tạo 1 file info.php

# nano /var/www/lighttpd/info.php

Nội dung như sau

<?php
phpinfo();
?>

Truy cập vào Web địa chỉ http://ip-vps/info.php  để xem kết quả

Xem xong chúng ta xóa file này đi để bảo mật

# rm -rf /var/www/lighttpd/info.php

3. Cài đặt một số module để php và maria làm việc với nhau 

Gõ các lệnh sau đây để cài một số module

# yum -y install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
# yum -y install php-pecl-apc

Khởi động lại php

# systemctl reload php-fpm.service

4.Cài đặt MariaDB

Thêm kho MariaDB repo

Nếu bạn dùng mariaDB 5 thì cứ cài như bình thường

Để cài đặt MariaDB 10 ,bạn cần thêm một repository sau vào hệ thống bằng cách chạy lệnh sau

# wget -O /etc/yum.repos.d/MariaDB.repo http://mariadb.if-not-true-then-false.com/centos/$(rpm -E %centos)/$(uname -i)/10

Sau đó hãy xóa cache của yum đi

# yum clean all

update lại hệ thống để yum để nó cập nhật package của MariaDB

# yum update -y

Nếu bạn không làm 2 bước trên nó sẽ báo lỗi như sau

Transaction Check Error:
file /usr/share/mysql/ukrainian/errmsg.sys from install of MariaDB-server-10.0.25-1.el6.x86_64 conflicts with file from package mysql-libs-5.5.50-1.el6.remi.x86_64
Error Summary

Cài đặt MariaDB 5.5

# yum install -y MariaDB MariaDB-server

Khởi động MariaDB

# systemctl start mariadb

Cho MariaDB khởi động cùng hệ thống

# systemctl enable mariadb

Đặt mật khẩu cho tài khoản root MariaDB:

# mysql_secure_installation

Sẽ hiện ra các câu sau

câu 1 : Enter current password for root (enter for none)<Nhập mật khẩu hiện tại cho root (nhập cho không có)> : cứ enter là xong

câu 2 : Set root password? [Y/n]<Đặt mật khẩu gốc> chọn Y và nhập mật khẩu 

câu 3 : Remove anonymous users? [Y/n]<xóa người dùng vô danh> chọn Y

câu 4 : Disallow root login remotely? [Y/n]<Không cho phép đăng nhập root từ xa> chọn Y 

câu 5 : Remove test database and access to it? [Y/n]<xóa cơ sở dữ liệu kiểm tra và truy cập vào nó> chọn Y

câu 6 : Reload privilege tables now? [Y/n]<khởi động lại> Chọn Y

Để đăng nhập vào mariaDB

# mysql -u root -p

Một số câu lệnh của mariaDB

Hiển thị toàn bộ databases:

MariaDB [(none)]> SHOW DATABASES;

Tạo database:

MariaDB [(none)]> CREATE DATABASE <tên cở sở dữu liệu>;

Sử dụng một database:

MariaDB [(none)]> USE <tên cở sở dữu liệu>;

Xóa một database:

MariaDB [(none)]> DROP DATABASE <tên cở sở dữu liệu>;

Đến đây chúng ta đã kết thúc bài Hướng dẫn cài đặt Lighttpd với PHP-FPM và MariaDB trên CentOS 7

Hẹn gặp lại các bạn trong các bài tiếp theo. Chúc các bạn thành công.