zoukankan      html  css  js  c++  java
  • PHP内核-环境搭建(一)

    难得闲下来,发现自己没有系统的学习过PHP内核,希望我能够慢慢啃下PHP内核书籍,无论是抄袭也好,码字也好,一步一个脚印走下去。

    学习来源:http://www.php-internals.com/book/?p=chapt01/01-01-php-env-building

    在开始学习PHP实现之前,我们需要一个实验和学习的环境。下面介绍一下怎样在*nix环境下准备和搭建PHP环境。

    本章学习目录

    1、寻找PHP源码

    2、准备编译环境

    3、编译

    一、寻找PHP源码

      为了学习PHP的实现,首先需要下载PHP的源代码。下载源码首选是去PHP官方网站http://php.net/downloads.php下载, 如果你喜欢使用svn/git等版本控制软件,也可以使用svn/git来获取最新的源代码。  

    # git 官方地址
    git clone https://git.php.net/repository/php-src.git
    # 也可以访问github官方镜像
    git clone git://github.com/php/php-src.git
    cd php-src && git checkout PHP-5.3 # 签出5.3分支
    

      源码包下载地址:https://pan.baidu.com/s/1bpi4D9l  

    二、准备编译环境  

      解压PHP压缩包:

    tar –zxvf php-7.2.0.tar.gz  
    

      进入解压后的目录:

    cd php7.2.0
    

      安装PHP需要的扩展:

    yum install libxml2 libxml2-devel openssl openssl-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libmcrypt libmcrypt-devel -y   

    三、编译  

    配置参数扩展

    ./configure --prefix=/usr/local/php720 --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-simplexml --enable-xml --disable-rpath --enable-bcmath --enable-soap --enable-zip --with-curl --enable-fpm --with-fpm-user=nobody --with-fpm-group=nobody --enable-mbstring --enable-sockets --with-gd --with-openssl --with-mhash --enable-opcache --disable-fileinfo    

    编译安装

    make && make install    

    配置Nginx.conf 支持解析PHP

    打开nginx配置文件(/usr/local/nginx/conf/nginx.conf)
    找到localtion模块,在index后面添加index.php,使nginx识别php文件;

    继续往下滑在修改:

    启动php-fpm:

      1、将php-fpm.conf.default复制为php-fpm.conf

    cd /usr/local/php720/etc  
    cp php-fpm.conf.default php-fpm.conf  
    

      2、然后启动php-fpm

    /usr/local/php720/sbin/php-fpm  
    

      3、如果启动报错(如下图):

    解决方法:进入到 /usr/local/php720/etc/php-fmp.d下的www.conf.default 复制为www.conf,然后启动php-fpm;
    进入文件夹(如果进不去,就一步步的cd进去; 如果没有这个文件就自己创建个php-fpm.d文件夹,再进到网址下载www.conf文件:https://pan.baidu.com/s/1o8mRYkU)
    cd /usr/local/php720/etc/php-fpm.d  
    cp www.conf.default www.conf  
    

      4、先把php-fpm进程清除

    pkill php-fpm  
    

      5、再启动php-fpm

    /usr/local/php720/sbin/php-fpm  
    

      最后在/usr/local/nginx/html下新建文件index.php,输出phpinfo; 显示成功,说明php安装成功

      

  • 相关阅读:
    POJ3352 Road Construction (双连通分量)
    强连通分量(模板)
    图基本概念
    Air Raid(最小路径覆盖)
    Machine Schedule(最小覆盖)
    hdoj 1564 Play a game
    nyoj 483 Nightmare【bfs+优先队列】
    hdoj 1083 Courses【匈牙利算法】
    hdoj 2036 改革春风吹满地
    nyoj 353 3D dungeon
  • 原文地址:https://www.cnblogs.com/dump/p/9199629.html
Copyright © 2011-2022 走看看