文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux下安装PHP

2023-09-02 05:37

关注

安装前的准备,安装依赖

yum -y install gcc openssl openssl-devel curl curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel pcre pcre-devel libxslt libxslt-devel bzip2 bzip2-devel sqlite-devel

编译

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-pdo-mysql --with-mysqli --with-gd --with-zlib --with-mcrypt --enable-fpm

安装

make && make install

配置文件

需要复制相关配置文件:php.ini    php-fpm.conf    www.conf 

设置环境变量:export:查看环境变量

/etc/profile文件中进行添加:

配置ngnix.conf

location ~ \.php$ {
            root           F:\phpproject;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  SCRIPT_NAME  $fastcgi_script_name;
            include        fastcgi_params;
        }

设置开机自启动php-fpm

第一种方式:在/etc/init.d文件夹中,新建一个php-fpm文件,内容如下:

#!/bin/bash  # php-fpm startup script for the php-fpm   # description: php-fpm is very good  # processname: php-fpm  # pidfile: /var/run/php-fpm.pid  # config: /usr/local/php/etc/php-fpm.conf       php_command=/usr/local/php/sbin/php-fpm   #设置成自己的路径php_config=/usr/local/php/etc/php-fpm.conf   #设置成自己的路径php_pid=/usr/local/php/var/run/php-fpm.pid  #设置成自己的路径RETVAL=0  prog="php-fpm"       #start function  php_fpm_start() {      /usr/local/php/sbin/php-fpm  #设置成自己的路径}       start(){      if [ -e $php_pid  ]      then      echo "php-fpm already start..."      exit 1      fi      php_fpm_start  }       stop(){      if [ -e $php_pid ]      then      parent_pid=`cat $php_pid`      all_pid=`ps -ef | grep php-fpm | awk '{if('$parent_pid' == $3){print $2}}'`      for pid in $all_pid      do              kill $pid          done          kill $parent_pid      fi      exit 1  }       restart(){      stop      start  }       # See how we were called.  case "$1" in  start)          start          ;;  stop)          stop          ;;  restart)          stop          start          ;;  status)          status $prog          RETVAL=$?          ;;  *)          echo $"Usage: $prog {start|stop|restart|status}"          exit 1  esac  exit $RETVAL  
将脚本设置为可执行文件:chmod 775 /etc/init.d/php-fpm 添加为服务:chkconfig --add /etc/init.d/php-fpm  设置开机启动服务:chkconfig php-fpm on   //设置开机启动

第二种方式:在目录/lib/systemd/system下新建文件php-fpm.service,内容如下:

[Unit]Description=php-fpmAfter=network.target[Service]Type=forkingExecStart=/usr/local/php/sbin/php-fpmPrivateTmp=true[Install]WantedBy=multi-user.target

设置开机自启动:systemctl enable php-fpm

添加扩展------可在php解压后的目录下找到ext文件夹(~/php8/ext/),里面有一些相关的扩展

安装完成后,扩展文件夹下没有任何的扩展文件,这时需要进行各种安装

使用phpize命令时,需要依赖于prel autoconf    m4   必须先进行安装,

安装:yum install autoconf m4    prel

phpize命令执行后,会生成configure文件

 ./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

安装composer

php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

会生成composer-setup.php文件

注:可能会出现如下错误:

 则需要安装ca-certificates    yum install ca-certificates

php composer-setup.php

会生成一个composer.phar文件,可以将这个文件复制到相关目录下,如:/usr /local/bin

删除前面生成的安装文件

php -r "unlink('composer-setup.php');"

注:

1) 安装mysqli扩展时需要先安装mysql-devel,编译时,需要多加一个参数

./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/bin/mysql_config

2) 安装openssl扩展时,需要先安装openssl和openssl-devel,将config0.m4复制一个config.m4文件,再phpize, 再进行编译----------实现非对称加密

./configure --with-php-config=/usr/local/php/bin/php-config --with-openssl

3)安装snmp扩展,需要先安装net-snmp、 php-snmp、 net-snmp-devel依赖----简单网络管理协议

./configure --with-php-config=/usr/local/php/bin/php-config --with-snmp

4)安装pdo-odbc扩展,需要先安装unixODBC 和unixODBC-devel依赖

 ./configure --with-php-config=/data/apps/php/bin/php-config --with-pdo-odbc=unixODBC,/usr/

5)安装ldap扩展,需要先安装openldap和openldap-devel依赖-------轻量目录访问协议

创建软链接: ln -sv  /usr/lib64/libldap* /usr/lib/          有办法可以不创建软链吗?

./configure --with-php-config=/data/apps/php/bin/php-config --with-ldap

6)安装curl扩展和mbstring扩展时,由于gcc标准的问题会导致报错,需要根据报错路径去修改源码

 7) 安装odbc扩展,

8)安装imap扩展,需要先安装libc-client 和libc-client-devel   不然会报错

./configure --with-php-config=/data/apps/php/bin/php-config --with-imap-ssl 

来源地址:https://blog.csdn.net/zhtao369/article/details/129498604

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯