Hướng Dẫn Cài đặt LEMP ( NGINX, PHP-FPM, MARIADB) Và Tạo ...

I.Chuẩn bi

Cài đặt kho epel và remi ,Tham khảo link sau Click Here

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

Bước 1: Tạo kho để cài đặt nginx

Nếu bạn muốn dùng phiên bản nginx 1.10. thì phải tạo kho cài đặt , còn dùng bản nginx 1.0, thì không cần làm bước này

Tạo file nginx.repo

# nano /etc/yum.repos.d/nginx.repo

Trong file nginx.repo ta tạo nội dung sau

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

Cho hệ thống update

# yum update -y

Bước 2: cài đặt nginx và php-fpm

Dùng lệnh sau để cài đặt nginx

# yum install nginx -y

Khởi động nginx

# systemctl start nginx

Để nginx chạy cùng hệ thống

# systemctl enable nginx

Kiểm tra phiên bản của nginx

# nginx -v

Dùng lệnh sau để cài đặt php-fpm và php-mysql để php làm việc với cơ sở dữ liệu

# yum install php php-mysql php-fpm

Có thể cài thêm một số modun php cần thiết

# yum -y install php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel

# yum -y install php-pecl-apc

Cấu hình bộ xử lý PHP

Truy cập vào file php.ini

# nano /etc/php.ini

Tìm dòng cgi.fix_pathinfo bỏ dấu ghi chú và thêm số 0 vào ,để cho php làm việc chính xác và phù hợp hơn với hệ thống

cgi.fix_pathinfo = 0

Sau đó ta truy cập vào file www.conf

# nano /etc/php-fpm.d/www.conf

Tìm các dòng sau và thay đổi

Thiết lập use và group làm việc cho nginx

user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx

Tìm dòng listen và thay đổi như sau

; Note: This value is mandatory. listen = /var/run/php-fpm/php-fpm.sock

Tiếp tục ta sửa như sau

listen.owner = nginx listen.group = nginx ;listen.mode = 0660

Khởi động php-fpm

# systemctl start php-fpm

Đến đây sau khi thiết lập cho php lắng nghe sock ta phải cấp quyền cho nó

# chmod -R 666 /var/run/php-fpm/php-fpm.sock

# chown nginx:nginx /var/run/php-fpm/php-fpm.sock

Khởi động lại php và cho khởi động cùng hệ thống

# systemctl restart php-fpm # systemctl status php-fpm # systemctl enable php-fpm

Cấu hình nginx để làm việc với php

Tạo 1 file backup file cấu hình chính của nginx

# mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bk

# nano /etc/nginx/conf.d/default.conf

có nội dung như sau

server { listen 80; server_name localhost;

# note that these lines are originally from the "location /" block root /usr/share/nginx/html; index index.php index.html index.htm;

location / { try_files $uri $uri/ =404; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; }

location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Sửa file /nginx.conf

# nano /etc/nginx/nginx.conf

Thêm dòng vàng sau vào

access_log /var/log/nginx/access.log main; index index.php index.html index.htm;

Khởi động lại nginx

# systemctl restart nginx

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

# nano /usr/share/nginx/html/info.php

<?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 /usr/share/nginx/html/info.php

Bước 3: 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

Xem thêm link tham khao nâng cấp mariaDB từ 5. lên mariaDB 10. click here

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;

Bước 4: Tạo VirtualHost

Giả sử ta có domain là maxserver.net

Ta sẽ tạo một số file như sau

Tạo 1 thư mục chứa các file log

# mkdir -p /home/nginx/maxserver.net/log

Tạo 1 file ghi các lỗi

# touch /home/nginx/maxserver.net/log/error.log

Tạo thư mục chứa code của web

# mkdir -p /home/nginx/maxserver.net/public_html

Gán use và group và phân quyền

# chown -R nginx:nginx /home/nginx

# chmod -R 755 /home/nginx/

Tạo 1 file cấu hình riêng cho domain

# cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/maxserver.net.conf

Chỉnh sửa file maxserver.net.conf

# nano /etc/nginx/conf.d/maxserver.net.conf

sửa dòng sau

server_name localhost;

Sửa thành

server_name www.maxserver.net maxserver.net;

Thêm dòng vàng sau

error_log /home/nginx/xobic.com/log/error.log error;

Tìm tất cả các dòng đường dẫn sau:

root /usr/share/nginx/html;

Và sửa thành

root /home/nginx/maxserver.net/public_html;

Khởi động lại nginx

# systemctl restart nginx.service

Test virtualhost bằng cách tạo 1 file

# nano /home/nginx/maxserver.net/public_html/index.html

Vội dung như sau

<html> <head> <title>maxserver</title> </head> <body> <h1>Chuc mot ngay tot lanh, ban da tao virtualhost thanh cong</h1> </body> </html>

Và truy cập vào http://ip-vps/index.html và xem kết quả

Từ khóa » Cài đặt Lemp Server 2016