如何搭建LNMP架构

目录

一、什么是LNMP

Linux系统

Apache服务 

Nginx服务

MySQL数据库

PHP服务

二、搭建LNMP

安装Nginx服务

第一步 关闭防火墙和安全机制

第二步 安装依赖环境

第三步 创建运行用户

第四步 解压服务包

第五步 编译安装

第六步 编译

第八步 添加 Nginx 系统服务

第九步 赋权并启动服务

安装MySQL服务

第一步 安装MySQL依赖环境

第二步 创建运行用户

第三步 解压相关服务包

第四步 编译安装

第五步 编译

第六步 修改MySQL配置文件

第七步 更改文件属性

第八步 设置路径环境变量

第九步 初始化数据库

第十步 添加MySQL系统服务

第十一步 修改MySQL密码

第十二步 登录一下进行测试

安装PHP服务环境

第一步 安装环境依赖包

第二步 解压相关服务包

第三步 编译安装

第四步 编译

第五步 路径优化

第六步 调整配置文件

第七步 更改配置文件

第八步 调整服务配置文件

第九步 更改配置文件内容

第十步 调整扩展配置文件

第十一步 启动php-fpm

第十二步 配置Nginx支持PHP解析

第十三步 重启服务

第十四步 编辑测试页内容

第十五步 进入浏览器测试访问


一、什么是LNMP

LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python
        LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构
        Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等
        Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器
        Mysql是一个小型关系型数据库管理系统
        PHP是一种在服务器端执行的嵌入HTML文档的脚本语言
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统

LNMP平台就是 Linux、 Ngnix、 My SQL、PHP的组合架构,需要 Linux服务器、MysαL数据库、PHP解析环境
Ngnix特长:高并发,低资源,处理静态网络访问请求非常强
Apache:静态处理和动态处理都可以做,更适合做动态处理
Nginx将动态资源请求交给PHP当中的fpm处理动态请求
PHP主配置文件:php.ini
Nginx将动态资源分配给FPM或Apache

Linux系统

Linux,全称GNU/Linux,是一种类似Unix的操作系统,可以免费使用,自由传播。它是一个基于POSIX的多用户、多任务、多线程、多CPU的操作系统。随着互联网的发展,Linux得到了全世界软件爱好者、组织和公司的支持。除了在服务器方面保持强劲的发展势头,在个人电脑和嵌入式系统方面也取得了长足的进步。用户不仅可以直观地获得操作系统的实现机制,还可以根据自己的需求对Linux进行修改和改进,使其最大限度地适应用户的需求

Apache服务 

是​​使用最广泛的 Web 服务器软件。Apache 是​​由 Apache Software Foundation 开发和维护的,它是一个免费提供的开源软件。它占全球所有网络服务器的 67%。它快速,可靠,安全。它可以通过使用扩展和模块进行高度定制,以满足许多不同环境的需求。大多数 WordPress 托管服务提供商使用 Apache 作为其 Web 服务器软件。但是,WordPress 也可以在其他 Web 服务器软件上运行。

Nginx服务

nginx是一个高性能的HTTP和反向代理服务器,特点是占用内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

nginx专为性能优先而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数。

MySQL数据库

MySQL是一个关系型数据库管理系统由瑞士MySQL AB公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统 ) 应用软件之一。

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。

PHP服务

PHP是一种通用开源脚本语言,主要应用于Web开发,它可以与HTML一起使用或独立使用。PHP有很多的优点,例如易于学习,易于使用,跨平台运行等。

PHP服务是一种能够在服务器端运行PHP脚本的服务。它具有以下几个方面的优点:

 高效性

PHP服务通过在服务器端运行PHP脚本,能够实现高效率和快速的网页响应,提升了网站的访问速度,进而提升了客户的满意度。

 安全性

PHP服务对于保证服务器端的安全性非常重要。它通过限制不必要的权限和保护程序的稳定性来确保系统安全。同时,在PHP脚本执行的过程中,用户数据也可以被加密和保护,从而确保用户隐私信息的安全性。

 节省时间和成本

PHP服务可以快速地释放应用程序的资源,同时也可以减少了服务器需要的硬件资源,从而大大节省时间和成本。

 可扩展性

PHP服务还具有相对应的可扩展性,这意味着它很容易与其他服务进行整合,例如云计算技术,数据库服务等。

 易于管理和维护

PHP服务开发和维护相对容易,这是因为PHP本身就非常简单易用。开发人员只需要熟悉PHP相关技术和知识,就能够快速地开发和维护网站和应用程序。

二、搭建LNMP

安装Nginx服务

第一步 关闭防火墙和安全机制

systemctl stop firewalld    #关闭防火墙
systemctl disable firewalld     #开机自动关闭防火墙
setenforce 0     #关闭安全机制

如何搭建LNMP架构_第1张图片

第二步 安装依赖环境

命令:yum -y install pcre-devel zlib-devel gcc gcc-c++ make

第三步 创建运行用户

命令:useradd -M -s /sbin/nologin nginx

第四步 解压服务包

命令:tar zxvf nginx-1.12.0.tar.gz -C /opt/

如何搭建LNMP架构_第2张图片

第五步 编译安装

命令:./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module

如何搭建LNMP架构_第3张图片

第六步 编译

命令:make -j 4 && make install

第七步 优化路径

命令:ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

第八步 添加 Nginx 系统服务

如何搭建LNMP架构_第4张图片

第九步 赋权并启动服务

命令:chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service

如何搭建LNMP架构_第5张图片

安装MySQL服务

第一步 安装MySQL依赖环境

命令:yum -y install \
ncurses \
ncurses-devel \
bison \
cmake

如何搭建LNMP架构_第6张图片

第二步 创建运行用户

命令:useradd -M -s /sbin/nologin  mysql

第三步 解压相关服务包

命令:tar xzvf mysql-boost-5.7.20.tar.gz

如何搭建LNMP架构_第7张图片

第四步 编译安装

命令:cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1

如何搭建LNMP架构_第8张图片

第五步 编译

命令:make -j 4 && make install

第六步 修改MySQL配置文件

内容:

[client]
port = 3306
socket=/usr/local/mysql/mysql.sock

[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

如何搭建LNMP架构_第9张图片

第七步 更改文件属性

命令:chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf

第八步 设置路径环境变量

命令:echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile    
source /etc/profile   #刷新配置文件

第九步 初始化数据库

命令:mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

如何搭建LNMP架构_第10张图片

第十步 添加MySQL系统服务

命令:cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system

systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld

如何搭建LNMP架构_第11张图片

第十一步 修改MySQL密码

命令:mysqladmin -u root -p password "123456"

第十二步 登录一下进行测试

命令:mysql -u root -p

如何搭建LNMP架构_第12张图片

安装PHP服务环境

第一步 安装环境依赖包

命令:yum -y install gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

如何搭建LNMP架构_第13张图片

第二步 解压相关服务包

命令:tar xjvf php-7.1.10.tar.bz2

如何搭建LNMP架构_第14张图片

第三步 编译安装

命令:./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip

如何搭建LNMP架构_第15张图片

第四步 编译

命令:make -j 4 && make install

第五步 路径优化

命令:ln -s /usr/local/php/bin/* /usr/local/bin/

第六步 调整配置文件

命令:cp /opt/php-7.1.10/php.ini-development /usr/local/php/php.ini

第七步 更改配置文件

如何搭建LNMP架构_第16张图片

如何搭建LNMP架构_第17张图片

如何搭建LNMP架构_第18张图片

第八步 调整服务配置文件

命令:cd /usr/local/php/etc/
cp  php-fpm.conf.default php-fpm.conf

第九步 更改配置文件内容

如何搭建LNMP架构_第19张图片

第十步 调整扩展配置文件

命令:cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf

第十一步 启动php-fpm

命令:/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini

如何搭建LNMP架构_第20张图片

第十二步 配置Nginx支持PHP解析

如何搭建LNMP架构_第21张图片

第十三步 重启服务

命令:systemctl restart nginx.service

第十四步 编辑测试页内容

命令:vim /usr/local/nginx/html/index.php

如何搭建LNMP架构_第22张图片

第十五步 进入浏览器测试访问

如何搭建LNMP架构_第23张图片

你可能感兴趣的:(架构,php,开发语言,服务器,运维)