PHP: php.ini PHP扩展PHP: php.ini PHP扩展PHP: php.ini PHP扩展PHP: php.ini PHP扩展
  • 首页
  • 博客
  • 书签
  • 文件
  • 分析
  • 登录

PHP: php.ini PHP扩展

发表 admin at 2022年7月19日
类别
  • PHP/Wordpress
标签

-参考设置:

file_uploads = On
post_max_size = 2024M
upload_max_filesize = 2024M
output_buffering = Off
max_execution_time = 4000
max_input_vars = 3000
max_input_time = 5000
memory_limit = 400M
zlib.output_compression = Off

 

-phpinfo()函数

        phpinfo函数可以显示出PHP 所有相关信息。是排查配置php是是否出错或漏配置模块的主要方式之一!代码如下 :

               <?php

                 phpinfo();

               ?>

       只要访问到phpinfo()函数的web页面,即返回php的所有相关信息!

1、phpinfo()开关显示的是php的版本,System显示的是操作系统具体型号,Build Date显示的是安装php的日期,Server API在这里显示支持php-fpm程序

System

Linux party 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64

Build Date

Apr 2 2019 17:19:10

Server API

FPM/FastCGI

 

2、如果是源码安装时,会有”Configure Command“显示当时源码配置时添加的参数及模块,yum源安装则没有显示

Configure Command

‘./configure’ ‘Cprefix=/usr/php’ ‘Cwith-config-file-path=/usr/php/etc’ ‘Cwith-gd’ ‘Cwith-mysqli’ ‘Cwith-openssl’ ‘Cwith-zlib’ ‘Cwith-curl’ ‘Cwith-jpeg-dir’ ‘Cwith-png-dir’ ‘Cwith-iconv’ ‘Cenable-fpm’ ‘Cenable-zip’ ‘Cenable-mbstring’

3、如果php是由yum安装时,查看安装的模块配置文件是放在“Scan this dir for additional .ini files”目录,显示加载到的模块详情在“Additional .ini files parsed”查看。源码安装则为none值

 

4、Configuration File (php.ini) Path  这是 php 默认的配置文件路径,可以有或无真实的php.ini文件 。 Loaded Configuration File  这是实际加载的,就是php服务启动时以这个配置文件为准,如果这个文件不存在,就在Configuration File里找。

Configuration File (php.ini) Path

/etc/opt/remi/php71

Loaded Configuration File

/etc/opt/remi/php71/php.ini

注意:

       1、上面的是显示为yum安装时自己设置好的配置ini文件路径,如果是源码安装会要配置Cwith-config-file-path=/usr/php/etc参数后,安装完后还要把源码包的php.ini-production拷贝到Cwith-config-file-path设置的路径下改为php.ini

       2、php.ini-development (开发环境用)与php.ini-production(生产环境用)两个建议。

       3、如果不复制的话,Loaded Configuration File会显示为None 。

5、extension_dir的文件是php加载的扩展模块存放的目录(在core模块里)

extension_dir

/opt/remi/php71/root/usr/lib64/php/modules

/opt/remi/php71/root/usr/lib64/php/modules

6、在Configurationf版块可以查看php的模块加载情况,是否可用。

7、在Environment查看php的环境变量,这里把用户和组为本来的apache改为nginx

8、在PHP Variables可以查看php变量对应的参数,方便套用

-Additional .ini files parsed

PHP Version 7.4.27

 

System

Linux alaica.com 5.4.0-96-generic #109-Ubuntu SMP Wed Jan 12 16:49:16 UTC 2022 x86_64

Build Date

Dec 20 2021 21:28:15

Server API

CGI/FastCGI

Virtual Directory Support

disabled

Configuration File (php.ini) Path

/etc/php/7.4/cgi

Loaded Configuration File

/home/test/etc/php7.4/php.ini

Scan this dir for additional .ini files

/etc/php/7.4/cgi/conf.d

Additional .ini files parsed

/etc/php/7.4/cgi/conf.d/10-mysqlnd.ini, /etc/php/7.4/cgi/conf.d/10-opcache.ini, /etc/php/7.4/cgi/conf.d/10-pdo.ini, /etc/php/7.4/cgi/conf.d/15-xml.ini, /etc/php/7.4/cgi/conf.d/20-bcmath.ini, /etc/php/7.4/cgi/conf.d/20-bz2.ini, /etc/php/7.4/cgi/conf.d/20-calendar.ini, /etc/php/7.4/cgi/conf.d/20-ctype.ini, /etc/php/7.4/cgi/conf.d/20-curl.ini, /etc/php/7.4/cgi/conf.d/20-dom.ini, /etc/php/7.4/cgi/conf.d/20-exif.ini, /etc/php/7.4/cgi/conf.d/20-ffi.ini, /etc/php/7.4/cgi/conf.d/20-fileinfo.ini, /etc/php/7.4/cgi/conf.d/20-ftp.ini, /etc/php/7.4/cgi/conf.d/20-gd.ini, /etc/php/7.4/cgi/conf.d/20-gettext.ini, /etc/php/7.4/cgi/conf.d/20-iconv.ini, /etc/php/7.4/cgi/conf.d/20-json.ini, /etc/php/7.4/cgi/conf.d/20-mbstring.ini, /etc/php/7.4/cgi/conf.d/20-mysqli.ini, /etc/php/7.4/cgi/conf.d/20-pdo_mysql.ini, /etc/php/7.4/cgi/conf.d/20-pdo_sqlite.ini, /etc/php/7.4/cgi/conf.d/20-phar.ini, /etc/php/7.4/cgi/conf.d/20-posix.ini, /etc/php/7.4/cgi/conf.d/20-readline.ini, /etc/php/7.4/cgi/conf.d/20-shmop.ini, /etc/php/7.4/cgi/conf.d/20-simplexml.ini, /etc/php/7.4/cgi/conf.d/20-sockets.ini, /etc/php/7.4/cgi/conf.d/20-sqlite3.ini, /etc/php/7.4/cgi/conf.d/20-sysvmsg.ini, /etc/php/7.4/cgi/conf.d/20-sysvsem.ini, /etc/php/7.4/cgi/conf.d/20-sysvshm.ini, /etc/php/7.4/cgi/conf.d/20-tokenizer.ini, /etc/php/7.4/cgi/conf.d/20-xmlreader.ini, /etc/php/7.4/cgi/conf.d/20-xmlwriter.ini, /etc/php/7.4/cgi/conf.d/20-xsl.ini, /etc/php/7.4/cgi/conf.d/20-zip.ini

 

-php 怎么安装扩展
php
安装扩展的方法:1、使用apt或者yum命令安装扩展;2、使用pecl install命令安装扩展;3、通过源码编译安装;4、通过phpize安装。

本文操作环境:windows7系统、php5.3.29版,DELL G3电脑

php安装扩展的几种方法

安装扩展

注意
与Apache+PHP或者Nginx+PHP的运行模式不同,WorkerMan是基于PHP命令行 PHP CLI 运行的,使用的是不同的PHP可执行程序,使用的php.ini文件也可能不同。所以在网页中打印phpinfo()看到安装了某个扩展,不代表命令行的PHP CLI也安装了对应的扩展。

如何确定PHP CLI安装了哪些扩展
运行 php -m 会列出命令行 PHP CLI 已经安装的扩展,结果类似如下:

~# php -m

[PHP Modules]

libevent

posix

pcntl

…

如何确定PHP CLI 的php.ini文件的位置
当我们安装扩展时,可能需要手动配置php.ini文件,把扩展加进去,所以要确认PHP CLI的php.ini文件的位置。可以运行php Cini查找PHP CLI的ini文件位置,结果类似如下(各个系统显示结果会有差异):

~# php Cini

Configuration File (php.ini) Path: /etc/php5/cli

Loaded Configuration File:         /etc/php5/cli/php.ini

Scan for additional .ini files in: /etc/php5/cli/conf.d

Additional .ini files parsed:      /etc/php5/cli/conf.d/apc.ini,

/etc/php5/cli/conf.d/libevent.ini,

/etc/php5/cli/conf.d/memcached.ini,

/etc/php5/cli/conf.d/mysql.ini,

/etc/php5/cli/conf.d/pdo.ini,

/etc/php5/cli/conf.d/pdo_mysql.ini

…

给PHP CLI安装扩展(安装memcached扩展为例)
方法一、使用apt或者yum命令安装
如果PHP是通过 apt 或者 yum 命令安装的,则扩展也可以通过 apt 或者 yum 安装

debian/ubuntu等系统apt安装PHP扩展方法(非root用户需要加sudo命令)

1、利用apt-cache search查找扩展包

~# apt-cache search memcached php

php-apc C APC (Alternative PHP Cache) module for PHP 5

php5-memcached C memcached module for php5

2、使用apt-get install安装扩展包

~# apt-get install -y php5-memcached

Reading package lists… Done

Reading state information… Done

…

centos等系统yum安装PHP扩展方法

1、利用yum search查找扩展包

~# yum search memcached php

php-pecl-memcached C memcached module for php5

2、使用yum install安装扩展包

~# yum install -y php-pecl-memcached

Reading package lists… Done

Reading state information… Done

…

说明:

使用apt或者yum安装PHP扩展会自动配置php.ini文件,安装完直接可用,十分方便。缺点是有些扩展在apt或者yum中没有对应的扩展安装包。

【推荐学习:《PHP视频教程》】

方法二、使用pecl安装
使用pecl install命令安装扩展

1、pecl install安装

~# pecl install memcached

downloading memcached-2.2.0.tgz …

Starting to download memcached-2.2.0.tgz (70,449 bytes)

….

2、配置php.ini

通过运行 php Cini查找php.ini文件位置,然后在文件中添加extension=memcached.so

方法三、源码编译安装(一般是安装PHP自带的扩展,以安装pcntl扩展为例)
1
、利用php -v命令查看当前的PHP CLI的版本

~# php -v

PHP 5.3.29-1~dotdeb.0 with Suhosin-Patch (cli) (built: Aug 14 2014 19:55:20)

Copyright (c) 1997-2014 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies

2、根据版本下载PHP源代码

PHP历史版本下载页面:php.net/releases/

3、解压源码压缩包

例如下载的压缩包名称是php-5.3.29.tar.gz

~# tar -zxvf php-5.3.29.tar.gz

php-5.3.29/

php-5.3.29/README.WIN32-BUILD-SYSTEM

php-5.3.29/netware/

…

4、进入源码中的ext/pcntl目录

~# cd php-5.3.29/ext/pcntl/

5、运行 phpize 命令

~# phpize

Configuring for:

PHP Api Version:         20090626

Zend Module Api No:      20090626

Zend Extension Api No:   220090626

6、运行 configure命令

~# ./configure

checking for grep that handles long lines and -e… /bin/grep

checking for egrep… /bin/grep -E

…

7、运行 make 命令

~# make

/bin/bash /tmp/php-5.3.29/ext/pcntl/libtool Cmode=compile cc …

-I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend…

…

8、运 行make install 命令

~# make install

Installing shared extensions:     /usr/lib/php5/20090626/

9、配置ini文件

通过运行 php Cini查找php.ini文件位置,然后在文件中添加extension=pcntl.so

说明: 此方法一般用来安装PHP自带的扩展,例如posix扩展和pcntl扩展。除了用phpize编译某个扩展,也可以重新编译整个PHP,在编译时用参数添加扩展,例如在源码根目录运行

~# ./configure Cenable-pcntl Cenable-posix …

~# make && make install

方法四、phpize安装
如果要安装的扩展在php源码ext目录中没有,那么这个扩展需要到pecl.php.net 搜索下载

以安装libevent扩展为例(假设系统安装了libevent-dev库)

1、下载libevent扩展文件压缩包(在当前系统哪个目录下载随意)

~# wget pecl.php.net/get/libevent-0.1.0.tgz

C2015-05-26 21:43:40C  pecl.php.net/get/libevent-0.1.0.tgz

Resolving pecl.php.net… 104.236.228.160

Connecting to pecl.php.net|104.236.228.160|:80… connected.

HTTP request sent, awaiting response… 200 OK

Length: 9806 (9.6K) [application/octet-stream]

Saving to: “libevent-0.1.0.tgz”

100%[=======================================================>] 9,806       41.4K/s   in 0.2s

2、解压扩展文件压缩包

~# tar -zxvf libevent-0.1.0.tgz

package.xml

libevent-0.1.0/config.m4

libevent-0.1.0/CREDITS

libevent-0.1.0/libevent.c

….

3、进入到源码目录

~# cd libevent-0.1.0/

4、运行phpize命令

~# phpize

Configuring for:

PHP Api Version:         20090626

Zend Module Api No:      20090626

Zend Extension Api No:   220090626

5、运行configure命令

~# ./configure

checking for grep that handles long lines and -e… /bin/grep

checking for egrep… /bin/grep -E

checking for a sed that does not truncate output… /bin/sed

checking for cc… cc

checking whether the C compiler works… yes

…

6、运行make命令

~# /bin/bash /data/test/libevent-0.1.0/libtool Cmode=compile cc  -I. -I/data/test/libevent-0.1.0 -DPHP_ATOM_INC -I/data/test/libevent-0.1.0/include

…

7、运行make install命令

~# make install

Installing shared extensions:     /usr/lib/php5/20090626/

8、配置ini文件

通过运行 php Cini查找php.ini文件位置,然后在文件中添加extension=libevent.so

以上就是php 怎么安装扩展的详细内容

-POP3, smtp服务器需要ssl方式加密时,支持ssl需要php加载openssl扩展

 

发表回复 取消回复

要发表评论,您必须先登录。

类别

  • Cat
  • Python
  • Django
  • Database
  • Html/CSS
  • JavaScript
  • Vue
  • RegExp
  • Maths/AI
  • PHP/Wordpress
  • Practice
  • Linux
  • Windows
  • Android
  • NAS
  • Software
  • Hardware
  • Network
  • SEO
  • English
  • Games
  • Recipes
  • General
  • Memorandum
  • Essays
  • 未分类

归档

©2015-2023 艾丽卡 Blog support@alaica.com
      ajax-loader