LNMP部署 源码 (Linux, Nginx ,Mysql ,PHP)-------------- (连载篇(一)----PHP) 个人整理!!!

前言

与apche的php不同的是咱们nginx的php需要用到–enable-fpm 模块,
其他流程基本上都是大同小异!!

  • 搭建好咱们测试nginx,mysql是否能访问正常

谢谢观看!!

  • 安装版本php-7.1

二,PHP

步骤一:PHP依赖环境包

yum -y install \
libjpeg \
libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel


//配置解释
libjpeg \                        //支持图片格式jpg
libjpeg-devel \                   
libpng libpng-devel \            //支持图片格式png
freetype freetype-devel \        //支持字体样式
libxml2 \                        //支持xml格式
libxml2-devel \       
zlib zlib-devel \                //提供数据压缩模块
curl curl-devel \                //curl是利用URL语法在命令行方式下工作的开源文件传输工具
openssl openssl-devel            //开放源代码的软件库包

步骤二:到软件包所在目录opt解压

cd /opt

yum -y install bzip2 # 最小化安装可能没有bzip2工具下载下

tar xjvf php-7.1.10.tar.bz2

步骤三: 编译安装

cd php-7.1.10


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


//配置解释
编译安装,主要也是将咱们上面的模块启动起来。
--prefix=/usr/local/php \                              //指定安装路径
--with-mysql-sock=/usr/local/mysql/mysql.sock \        //mysql的通讯文件,连接mysql必要文件
--with-mysqli \                                        //指定数据库
--with-zlib \                                          //开启模块 这里不做解释了
--with-curl \                                        
--with-gd \                                           //开启gd库,所有的图片都是通过gd库来实现,所以gd库是首先要开启的;
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \                                      //重点来了,让动态处理模块,lnmp要支持动态处理,必须要开启的模块
--enable-mbstring \                                 //启动多字节字符串支持
--enable-xml \
--enable-session \                                  //用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。
--enable-ftp \                                      //开启ftp模块
--enable-pdo \                                      //扩展为PHP访问数据库定义了一个轻量级的一致接口。
--enable-tokenizer \                               //允许一个应用程序进入一个令牌
--enable-zip                                       //开启zip压缩模块

make && make install

步骤四:优化过程

//php有三个配置文件
php.ini 核心配置文件
php-fpm.conf 进程服务配置文件
www.conf 扩展配置文件

cp php.ini-development /usr/local/php/lib/php.ini      //在解压后的php目录下,开发测试环境文件,复制到工作目录下php.ini核心配置文件

vi /usr/local/php/lib/php.ini                          //编辑,指定mysql的接口,对接mysql

mysqli.default_socket = /usr/local/mysql/mysql.sock    //1170行
date.timezone = Asia/Shanghai                          //时区,亚洲,上海939行

/usr/local/php/bin/php -m //验证php已经安装的模块

步骤五:配置优化FRM模块

cd /usr/local/php/etc/
cp -p php-fpm.conf.default         php-fpm.conf
cd /usr/local/php/etc/php-fpm.d/
cp -p www.conf.default  www.conf

//为什么要改成以.conf结尾的文件名呢?
在php.fpm.conf文件内有这么一条命令:
include=/usr/local/php/etc/php-fpm.d/*.conf
扩展模块支持目录下所有带有.conf结尾的文件!!!所以咱们更改是为了能够识别


cd  /usr/local/php/etc/
vi  php-fpm.conf

pid = run/php-fpm.pid          //启用模块,去掉; 启动pid文件


//启动fpm模块        -c启动
/usr/local/php/sbin/php-fpm  -c  /usr/local/php/etc/php.ini
 netstat -anpt |grep 9000
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      127009/php-fpm: mas 

//优化命令文件,将php命令文件,在系统命令中能够识别
ln -s /usr/local/php/bin/*  /usr/local/bin/

//过滤进程
ps  aux|grep -c 'php-fpm'  //过滤进程4个php-fpm进程
4

步骤六:让nginx支持PHP功能

vi /usr/local/nginx/conf/nginx.conf        //在nginx.conf配置文件里面有配置段,去掉#号就行,

        location ~ \.php$ {
            root           html;              
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
//配置解释:
        location ~ \.php$ {                      //rewrite模块支持的location ~支持正则表达式
            root           html;                 //站点目录   注意目录名称
            fastcgi_pass   127.0.0.1:9000;       //监听端口ip地址
            fastcgi_index  index.php;            //支持站点文件格式
            fastcgi_param  SCRIPT_FILENAME     /usr/local/nginx/html$fastcgi_script_name;   //网页文件存放位置,注意目录名称
            include        fastcgi_params;        //php自定义的变量
        }


//保存之后最好检查下语法是否正确
nginx -t 
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

步骤七:做php测试网页文档

vi  /usr/local/nginx/html/index.php

<?php
phpinfo();
?>

步骤八: 重启nginx服务验证

20.0.0.25/index.php
在这里插入图片描述

步骤九:测试mysql数据库是否正常

##登录mysql数据库,创建一个bbs数据库,并授权
mysql -u root -p    #会让你输入密码,咱们之前创建mysql的密码abc123

##进入数据库之后
CREATE DATABASE bbs;             //创建bbs数据库
GRANT all ON bbs.* TO 'bbsadm'@'%' IDENTIFIED BY 'admin123';             //允许ip地址
GRANT all ON bbs.* TO 'bbsadm'@'localhost' IDENTIFIED BY 'admin123';    //允许主机
flush privileges;                                 //刷新数据库

注:在数据创建库,需要是三个字符以上,如:bbs,hgg...

#####做数据库测试网页文档
vi  /usr/local/nginx/html/index.php

<?php
$link=mysqli_connect('20.0.0.25','bbsadm','admin123');
if($link) echo "<h1>凌晨四点了!!</h1>";
else echo "Fail!!";
?>

在这里插入图片描述

步骤十:测试验证

20.0.0.25/index.php
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值