在日常的开发当中,随着开发的功能越来越复杂。对运行环境的要求也就随着需求的变化需要不断地更新和变化。一个在线的生产系统不可能一开始就满足了所有的运行依赖,因此动态地添加依赖就显得比较必要了。如果你的应用是基于lanmp的话,那么很有可能某天需要添加一个apache的扩展或者php的扩展。此次记录一下如何添加一个php的扩展。由于需要接入银联的接口,而查看了下运行环境,发现缺少了高精度运算的扩展php-bcmath。

  程序运行的时候报如下异常

php-bcmath【Fatal error: Call to undefined function bcscale()

  因此此处需要用phpize进行安装新的php扩展php-bcmath

  1、安装php-bcmath扩展

cd /www/wdlinux/apache_php-5.2./lib/php/extensions/
/www/wdlinux/apache_php-5.2./bin/phpize
./configure --enable-bcmath --with-php-config=/www/wdlinux/apache_php-5.2./bin/php-config
make
make test
make install

  安装好以后可以看到bcmath.so的安装目录为

  /www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/bcmath.so

  2、将bcmath.so扩展添加到php.ini

  编辑/www/wdlinux/wdphp/lib/php.ini 

vi /www/wdlinux/wdphp/lib/php.ini

  添加如下内容:

extension="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/bcmath.so"

  3、重启服务

service httpd restart

  4、phpinfo()检查是否安装成功

  创建文件phpinfo_test.php

<?php
phpinfo()
?>

  在浏览器中运行http://你的域名/phpinfo_test.php

  如果安装成功,你可以找到这样的结果项

bcmath

BCMath support enabled

如何利用phpize在生产环境中为php添加新的扩展php-bcmath的更多相关文章

  1. VUE 利用 webpack 给生产环境和发布环境配置不同的接口地址

    转载地址: https://blog.csdn.net/gebitan505/article/details/58166055 VUE 利用 webpack 给生产环境和发布环境配置不同的接口地址 前 ...

  2. Spring Boot 利用 nginx 实现生产环境的伪热更新

    当我们在服务器部署Java程序,特别是使用了 Spring Boot 生成单一 Jar 文件部署的时候,单一文件为我们开发单来的极大的便利性,保障程序的完整性.但同时对我们修改程序中的任何一处都带来重 ...

  3. .NET跨平台之旅:在生产环境中上线第一个运行于Linux上的ASP.NET Core站点

    2016年7月10日,我们在生产环境中上线了第一个运行于Linux上的ASP.NET Core站点,这是一个简单的提供后端服务的ASP.NET Core Web API站点. 项目是在Windows上 ...

  4. 理解Docker(6):若干企业生产环境中的容器网络方案

    本系列文章将介绍 Docker的相关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  5. .NET跨平台之旅:生产环境中第2个跑在Linux上的ASP.NET Core站点

    今天我们在生产环境中上线了第2个跑在Linux上的ASP.NET Core站点.这是一个简单的Web API站点,通过命令行的方式调用安装在Linux服务器上的程序完成操作.之前用的是nodejs,现 ...

  6. 【原】Storm Local模式和生产环境中Topology运行配置

    Storm入门教程 1. Storm基础 Storm Storm主要特点 Storm基本概念 Storm调度器 Storm配置 Guaranteeing Message Processing(消息处理 ...

  7. 生产环境中CentOS7部署NET Core应用程序

    NET Core应用程序部署至生产环境中(CentOS7) 阅读目录 环境说明 准备你的ASP.NET Core应用程序 安装CentOS7 安装.NET Core SDK for CentOS7. ...

  8. 生产环境中使用Docker Swarm的一些建议

    译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它 ...

  9. [virtualenv]生产环境中使用virtualenv

    virtualenv 对于python开发和部署都是好工具,可以隔离多个python版本和第三方库的版本,这里作者总结了几个常用python服务怎么样结合virtual部署 原文链接 Python 中 ...

随机推荐

  1. 【BZOJ 3674】可持久化并查集加强版&【BZOJ 3673】可持久化并查集 by zky 用可持久化线段树破之

    最后还是去掉异或顺手A了3673,,, 并查集其实就是fa数组,我们只需要维护这个fa数组,用可持久化线段树就行啦 1:判断是否属于同一集合,我加了路径压缩. 2:直接把跟的值指向root[k]的值破 ...

  2. .Net身份验证概述

    一直以来,所有的系统基本都会有用户的登陆验证过程,整个过程其实也不难理解,就是对于cookie的解析.微软的.Net平台围绕用户身份验证授权也有好几个版本了,从早期的Membership到Identi ...

  3. ~~圣诞节到啦, canvas雪花效果, 漂亮到简直没天理啊~~

    看到coding的主界面有雪花, 原来,哇,  真漂亮, 一看源代码, 哦了个去, angular写的, 压力好大, 分析分析分析分析.... 然后就写成jQ插件的样子给大家用了. 在线预览的页面是: ...

  4. 【POJ 1260】Pearls

    题 题意 有n个(n≤100)等级的珍珠,等级越高单价越高,要购买一种等级的珍珠就要多付10*单价,现在需要购买一些等级的珍珠一定数量,若买更高等级的珍珠更便宜则可以买更高等级的珍珠,求最少花费. 分 ...

  5. android 读取sd卡中的图片

    一.获取读取SD卡的权限 <!--在SDCard中创建与删除文件权限  -->    <uses-permission android:name="android.perm ...

  6. mysql 时间函数

    select UNIX_TIMESTAMP(Now());#获取unix时间戳1436430994 ::"时间形式

  7. 用过SQL语句获取织梦DedeCMS每个栏目各有多少文章

    我对SQL语句不是很精通,这个SQL调用语句是我在一个模板里面看到了,特来和大家分享,大家在制作模板的过程中有需要可以用得到.       显示效果: 共有会员:31 名       本月更新:39 ...

  8. Linux下搭建svn服务器(转)

    原文地址:http://blog.163.com/longsu2010@yeah/blog/static/173612348201202114212933/ 安装步骤如下: 1.yum install ...

  9. TFS2008解除独占式锁定文件命令(转载)

    使用场景:如果项目团队成员A对项目某个文件以独占式方式签出,恰好那天该成员A没有来上班而成员需要对此文件进入修改并check in,这时需要先把A对该文件的锁定解除.没有IDE可以使用,只能使用下面的 ...

  10. aop注解

    注解 xml的直接配置 <aop:config proxy-target-class="false"> //切入点 <aop:pointcut expressio ...