配置php扩展(php扩展安装方法)

本文目录一览:

如何安装php的扩展bcmath

安装php的扩展bcmath具体步骤如下(以下操作均在wdcp 2.4的环境中):

1、ssh登陆vps控制台后,进入要安装的扩展的源码目录:cd /root/lanmp/php-5.2.17/ext/bcmath

2、运行phpize,这是wdcp中的路径

configuring for:

php api version:

20041225

zend module api no: 20060613

zend extension api no: 220060519

3、编译安装:

./configure –with-php-config=/www/wdlinux/php/bin/php-config

make

make install

4、增加到配置文件php.ini里

vi /www/wdlinux/etc/php.ini

在最后增加:extension=bcmath.so

5、重启服务

service httpd restart

service nginxd restart

然后就大功告成

怎么配置linux服务器php的redis扩展

一、安装php(如果php有问题建议删掉重装)

*1,首先从官网 下载php源码后解压,

*2,编译安装php(make install需要root)

# cd /php-NN (PHP解压目录,即源码目录)

# ./configure

–prefix=/usr/local/php –with-mysql=mysqlnd –with-mysqli=mysqlnd

–with-pdo-mysql=mysqlnd –with-iconv-dir –with-freetype-dir

–with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir

–enable-xml –disable-rpath –enable-bcmath –enable-shmop

–enable-sysvsem –enable-inline-optimization –with-curl –with-mcrypt

–enable-mbregex –enable-fpm –enable-mbstring –with-gd

–enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl

–enable-sockets –with-xmlrpc –enable-zip –enable-soap –enable-ftp

–with-apxs2=/usr/local/apache2/bin/apxs

(*注意此步的config需要许多参数,否则make install后的安装目录将缺少很多文件夹。

config执行的过程中注意看最后一步是否出现error,如果出现则说明缺少一些php需要的包。

比如jpeg,png,prce等,将错误复制到google查一下然后下载对应的包即可。)

# make

# make install (这个命令执行后系统将在/usr/local下创建php的安装目录)

到此需要注意两个目录,一是php的源码目录(应该是在/home/xxx下),二是php的安装目录(在/usr/local下)

*3,配置php.ini

# cp php.ini-development /usr/local/lib/php.ini (别忘了)

# vim /usr/local/lib/php.ini

在其中加入一句(随便在哪加都可以,网上有中说法是要加[redis],其实都一样):

extension=redis.so

二、安装redis

*1,下载redis

# wget

*2,安装

# cd ./redis-NN

# make

这样就将redis安装好了

可以通过/src/redis-server打开redis

三、将php扩展redis模块

*1,到下载phpredis最新版

*2,将刚下好的压缩包解压到php源码目录下的ext中,即/home/xxx/php-NN/ext/phpredis

# mv phpredis-NN php-NN/ext/phpredis

*3,将phpredis加入php拓展模块

# /usr/local/php/bin/phpize (如果在编译php时configure没有加足够的参数可能会在目录下缺少phpize)

# ./configure –with-php-config=/usr/local/php/bin/php-config (同样后面参数也很重要)

# make

# make install

*4,重启服务器(apache或nginx)

这样在phpinfo中就能看到redis扩展了

最后打开redis(/src/redis-server)

用以下代码测试是否可以工作

?php

$redis= newRedis();

$redis-connect(‘127.0.0.1’,6379);

$redis-set(‘name’,’xxx’);

echo$redis-get(‘name’);

?

如果遇到Fatal error: Uncaught exception ‘RedisException’ with message ‘Redis server went away’的问题那是因为你没有打开redis

如何安装新的PHP扩展模块

php安装好后,可能在初次安装时,会有些模块会有遗漏,但是我们又不想重新编译php,因为耗时是比较长的。我们可不可以在不重新编译安装php的情况下,来为php单独添加某一个模块呢?查找资料,发现还是有方法的,重点就是phpize了,于是写了这篇文章.

下面我们就以单独为php加载mysqli模块为例,演示如何动态为php添加模块。

1、找到php原码安装文件

2、cd /home/php/ext/myslqi

3、运行 /usr/local/php/bin/phpize

4、/configure –with-php-config=/usr/local/php/bin/php-config

5、make make install

6、安装完成之后会在系统/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/这个目录下面生成mysqli.so的库文件

7、编辑php.ini文件,指定php到哪人目录读取模块

vi /usr/local/php/etc/php.ini

extension_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613″

extension=mysqli.so

8、重启php服务 /usr/local/php/sbin/php-fpm restart

7、/usr/local/php/bin/php -m|grep mysqli 查看mysqli.so是否存在

如果步骤正确,你的人口也不差的情况下,应该这样php的动态模块加载就完成了。

如何设置PHP扩展的目录?

当服务器上PHP已经安装好,需要额外添加PHP扩展时怎么办?不需要重新安装PHP,有了phpize我们可以在原有的PHP基础之上直接安装扩展库。

这次编译仅仅只是单独编译PHP的扩展库,接下来将编译好的扩展库加入到现在运行的php中,不对现在运行的php重新编译,所以没有一点的影响。

下面我们演示安装xsl的扩展(不一定常用,仅做为一个范例)

做法一:

1.找到当前运行的php版本的源代码目录,如php-5.2.3。进入xsl扩展库目录。

$cd /home/pkgs/php-5.3.3/ext/xsl

2.调用phpize程序生成编译配置文件。

$/home/app/php5.3.3/bin/phpize

3.编译扩展库,分别执行下面的configure和make命令。

$./configure-with-php-config=/home/app/php5.3.3/bin/php-config

这一步执行通过后,再执行make命令,如果configure执行不通过,则查找错误原因。

$make

#make成功执行后,生成的扩展库文件在当前目录的 modules子目录下,

如/home/php-5.3.3/ext/curl/modules/xsl.so

4.配置php.ini文件

#将编译好的扩展库文件复制到PHP的扩展目录下,可通过查看phpinfo信息。。

$ cp /home/pkg/php-5.3.3/ext/xsl/modules/xsl.so /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626

#在php.ini文件中找到设置扩展目录的位置,然后将扩展路径设置到php安装目录/extension/no-debug-non….目录下,并添加扩展库位置。

extension_dir /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626”

extension=xsl.so

5.重启php,查看phpinfo信息,即可看到刚才添加进去的xsl扩展库。(如果有多个php-fpm进程的话,平滑重启主进程即可:kill -USR2 pid)

原创文章,作者:PU7WR,如若转载,请注明出处:https://www.506064.com/n/128002.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
PU7WR的头像PU7WR
上一篇 2024-10-03 23:24
下一篇 2024-10-03 23:24

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • ArcGIS更改标注位置为中心的方法

    本篇文章将从多个方面详细阐述如何在ArcGIS中更改标注位置为中心。让我们一步步来看。 一、禁止标注智能调整 在ArcMap中设置标注智能调整可以自动将标注位置调整到最佳显示位置。…

    编程 2025-04-29
  • 解决.net 6.0运行闪退的方法

    如果你正在使用.net 6.0开发应用程序,可能会遇到程序闪退的情况。这篇文章将从多个方面为你解决这个问题。 一、代码问题 代码问题是导致.net 6.0程序闪退的主要原因之一。首…

    编程 2025-04-29
  • Python创建分配内存的方法

    在python中,我们常常需要创建并分配内存来存储数据。不同的类型和数据结构可能需要不同的方法来分配内存。本文将从多个方面介绍Python创建分配内存的方法,包括列表、元组、字典、…

    编程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一个类的构造函数,在创建对象时被调用。在本篇文章中,我们将从多个方面详细讨论init方法的作用,使用方法以及注意点。 一、定义init方法 在Pyth…

    编程 2025-04-29
  • 用不同的方法求素数

    素数是指只能被1和自身整除的正整数,如2、3、5、7、11、13等。素数在密码学、计算机科学、数学、物理等领域都有着广泛的应用。本文将介绍几种常见的求素数的方法,包括暴力枚举法、埃…

    编程 2025-04-29
  • 使用Vue实现前端AES加密并输出为十六进制的方法

    在前端开发中,数据传输的安全性问题十分重要,其中一种保护数据安全的方式是加密。本文将会介绍如何使用Vue框架实现前端AES加密并将加密结果输出为十六进制。 一、AES加密介绍 AE…

    编程 2025-04-29
  • Python中读入csv文件数据的方法用法介绍

    csv是一种常见的数据格式,通常用于存储小型数据集。Python作为一种广泛流行的编程语言,内置了许多操作csv文件的库。本文将从多个方面详细介绍Python读入csv文件的方法。…

    编程 2025-04-29
  • Python学习笔记:去除字符串最后一个字符的方法

    本文将从多个方面详细阐述如何通过Python去除字符串最后一个字符,包括使用切片、pop()、删除、替换等方法来实现。 一、字符串切片 在Python中,可以通过字符串切片的方式来…

    编程 2025-04-29
  • 用法介绍Python集合update方法

    Python集合(set)update()方法是Python的一种集合操作方法,用于将多个集合合并为一个集合。本篇文章将从以下几个方面进行详细阐述: 一、参数的含义和用法 Pyth…

    编程 2025-04-29

发表回复

登录后才能评论