debian 编译 php mysql_Debian 9 下编译安装PHP及配置

一、准备工作

1.1 更新系统安装包列表

没啥,就他喵想用个最新的。

# apt update

1.2 必须软件包

下面都是编译php必须的,提前安装好。

# apt install gcc make

# apt install libxml2 libxml2-dev    //xml库

1.2 创建需要使用的目录

创建目录source和web,分别用来放源码和编译后的文件。

# mkdir /source/

# mkdir /web/

二、安装php

2.1 安装php

[官方网站] http://php.net/

命令流程:

# cd /source/

# wget http://www.php.net/distributions/php-7.1.10.tar.gz

# tar -zxf php-7.1.10.tar.gz

# cd php-7.1.10

# ./configure --prefix=/web/php --with-config-file-path=/web/php/etc --enable-fpm --with-mysqli --with-pdo-mysql

# make && make install

--with-config-file-path #配置文件所在目录

--enable-fpm      //启用php-fpm模块(推荐)

--enable-mbstring //启用mbstring模块(推荐)。多字节字符串,让php支持支持ISO-8859-*, EUC-JP, UTF-8之外编码的语言

--with-mysqli    //打开mysqli模块

--with-pdo-mysql  //pdo_mysql模块

三、安装php扩展(可选)

上面的方法是将所以扩展都编译在一起。这里是单独编译出来,然后通过php.ini文件,自由度更高。

/source/php-7.1.10/ext 你会看到很多的文件夹。需要什么扩展就进入哪个文件夹,运行如下命令。

# /web/php/bin/phpize

# ./configure --with-php-config=/web/php/bin/php-config

# make && make install

安装必须

# apt install autoconf              //php扩展编译需要

phpredis扩展

[官方网站] http://pecl.php.net/package/redis

命令流程:

# cd /source/

# wget http://pecl.php.net/get/redis-3.1.4.tgz

# tar -zxf redis-3.1.4.tgz

# cd redis-3.1.4

# /web/php/bin/phpize

# ./configure --with-php-config=/web/php/bin/php-config

# make && make install

openssl扩展

命令流程:

# cd /source/php-7.1.10/ext/openssl

# cp config0.m4 config.m4

# ln -s /usr/lib/x86_64-linux-gnu/libssl.so /usr/lib

# /web/php/bin/phpize

# ./configure --with-php-config=/web/php/bin/php-config

# make && make install

gd扩展

命令流程:

# apt install libpng-dev

# apt install libfreetype6 libfreetype6-dev

# cd /source/php-7.1.10/ext/gd

# /web/php/bin/phpize

# ./configure --with-php-config=/web/php/bin/php-config --with-freetype-dir

# make && make install

--with-freetype-dir      //打开gd库对freetype字体库的支持。

四、配置php-fpm

4.1 copy默认配置文件

# cd /source/php-7.1.10

# cp php.ini-development /web/php/etc/php.ini

# cd /web/php/etc

# cp php-fpm.conf.default php-fpm.conf

# cd /web/php/etc/php-fpm.d/

# cp www.conf.default www.conf

复制代码

4.2 修改php-fpm.conf

说明:为了可以使用信号命令。

找到以下字段

;pid = run/php-fpm.pid

修改成

pid = run/php-fpm.pid

保存

复制代码

# groupadd web

# useradd -g web nginx -M -s /sbin/nologin

找到以下字段

user = nobody

group = nobody

修改成

user = nginx

group = www

保存

复制代码

附、常用命令

php-fpm常用命令

# /web/php/sbin/php-fpm -c /web/php/etc/php.ini  //启动php-fpm

# kill -SIGUSR2 `cat /web/php/var/run/php-fpm.pid` //重启php-fpm

# kill -SIGINT `cat /web/php/var/run/php-fpm.pid`  //关闭php-fpm

信号解释:

SIGINT, SIGTERM 立刻终止

SIGQUIT 平滑终止

SIGUSR1 重新打开日志文件

SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值