zoukankan      html  css  js  c++  java
  • Linux 安装php7

    最近发现直接用yum安装php更加方便

    参考: htps://jingyan.baidu.com/article/870c6fc3460834b03fe4be06.html

    由于linux的yum源不存在php7.x,所以我们要更改yum源:

    rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    

      

    查看yum源中有没有php7.x

    yum search php7
    

      

    yum 安装php72w和各种拓展,选自己需要的即可:

    yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
    

      

    安装完成,查看php版本

    php -v
    

      

    配置php.ini

    vi /etc/php.ini
    

      

    在Linux中将php-fpm配置成服务的方法

    1.配置php-fpm.conf

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

    php-fpm.pid 目录必须指向:/usr/local/php/var/run/php-fpm.pid

    2.拷贝php-fpm脚本至/etc/init.d目录

    cp /home/soft/php-5.3.15/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

    3.设置权限并启动php-fpm:

    chmod 755 /etc/init.d/php-fpm
    
    /etc/init.d/php-fpm start
    
    chkconfig –add php-fpm
    

      

    最后,给出php-fpm以服务的方式启动、停止和重启:

    service php-fpm start
    
    service php-fpm stop
    
    service php-fpm reload
    

      

    问题1.Error: php72w-common conflicts with php-common-5.4.16-45.el7.x86_64,

    原因:yum默认装的是5.4的包,如果再装7的版本,就可能会冲突

    解决:在安装命令后面加上 --skip-broken

    yum -y install php*   --skip-broken
    

      

    常用命令

    linux中如何查看php指向的php.ini的绝对路径

    [root@localhost ~]# php --ini
    Configuration File (php.ini) Path: /usr/local/lib
    Loaded Configuration File:         (none)
    Scan for additional .ini files in: (none)
    Additional .ini files parsed:      (none)
    

    linux命令之查看配置文件要求的php.ini目录

    php -i | grep php.ini

    很久前写过,是5.6的,而且包含了nginx相关的,今天简单记下php7的安装,和原来基本类似

    1.安装依赖包

    yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
    

      

    2.下载安装包

    cd /usr/local
    wget https://www.php.net/distributions/php-7.1.31.tar.gz
    

      

    3.解压和创建安装目录

    tar -zxvf php-7.1.31.tar.gz
    mkdir /usr/local/php
    

      

    4.检查当前的环境是否满足要安装软件的依赖关系
    cd php-7.1.31

    ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --without-pear --disable-phar --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl
    

      

    5.编译安装

    make
    make install
    

      

    6.在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:

    cp php.ini-production /usr/local/php/php.ini
    

      

    [可选项] 设置让PHP错误信息打印在页面上

    vi /usr/local/php/php.ini

    display_errors = Off
    将Off改成On


    7.复制启动脚本

    $ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    $ chmod +x /etc/init.d/php-fpm
    

    修改php-fpm配置文件:

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

      

    8.去掉 pid = run/php-fpm.pid 前面的分号

    $ cd php-fpm.d
    $ cp www.conf.default www.conf
    $ vi www.conf

    修改user和group的用户为当前用户(也可以不改,默认会添加nobody这个用户和用户组)


    9.启动PHP

    $ /etc/init.d/php-fpm start #php-fpm启动命令
    $ /etc/init.d/php-fpm stop #php-fpm停止命令
    $ /etc/init.d/php-fpm restart #php-fpm重启命令
    $ ps -ef | grep php 或者 ps -A | grep -i php #查看是否已经成功启动PHP
    

      

    10.开机自启动

    vi /etc/rc.local 

    将 /etc/init.d/php-fpm start 添加进去

    chmod +x /etc/rc.d/rc.local
    

      

    11.环境绑定php

    在linux下执行php时无法执行,报错:php: command not found

    解决方法:

    export PATH=$PATH:/usr/local/php7/bin

    可以输入echo $PATH 查看下有没有添加成功,如下显示:

    usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/php/bin

    如果还不行,则再输入以下命令:

    ln -s /usr/local/php/bin/php /usr/bin/php 

    再次执行测试,基本可以跑通了,亲测一直有效

    附php安装路径查询:

    #whereis php

    #which php

    #php -v   查看版本号

    差异自己去体会

    Linux下查看nginx、mysql、php的安装路径和编译参数: https://www.cnblogs.com/kenshinobiy/p/7119341.html

    参考:

    Linux 安装php7  https://www.cnblogs.com/houss/p/11296285.html

    linux下无法执行PHP命令,错误 php: command not found   https://www.cnblogs.com/doseoer/p/9542948.html

  • 相关阅读:
    《浅谈12306核心模型设计思路和架构设计》阅读笔记
    《一路打怪升级,360推荐系统架构演进》阅读笔记
    SOA架构设计的案例分析
    《苏宁易购:商品详情系统架构设计》阅读笔记
    《数据蜂巢架构演进之路》阅读笔记
    洛谷P1005 矩阵取数游戏
    LOJ#6277. 数列分块入门 1
    洛谷P1879 [USACO06NOV]玉米田Corn Fields
    洛谷P1072 Hankson 的趣味题
    洛谷P2921 [USACO08DEC]在农场万圣节Trick or Treat on the Farm
  • 原文地址:https://www.cnblogs.com/cxscode/p/12575745.html
Copyright © 2011-2022 走看看