在日常的开发当中,随着开发的功能越来越复杂。对运行环境的要求也就随着需求的变化需要不断地更新和变化。一个在线的生产系统不可能一开始就满足了所有的运行依赖,因此动态地添加依赖就显得比较必要了。如果你的应用是基于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. 20.(转)Android的样式(Style)和主题(Theme)

    Android上的Style分为了两个方面: 1,Theme是针对窗体级别的,改变窗体样式: 2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式. Android系统的themes ...

  2. 【poj1182】 食物链

    http://poj.org/problem?id=1182 (题目链接) 题意 中文题 Solution 带权并查集. 神犇博客,秒懂 fa记录父亲,r记录与父亲的关系.%3运用的很巧妙. 代码 / ...

  3. 【bzoj1046】 HAOI2007—上升序列

    http://www.lydsy.com/JudgeOnline/problem.php?id=1046 (题目链接) 题意 给出一个数列,求数列中长度为L的下标字典序最小的上升子序列. Soluti ...

  4. UOJ150 运输计划

    运输计划(transport.cpp/c/pas)[问题描述]公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n-1 条 双向 航道,每条航道建立在两个星球之间,这 n-1 条航道 ...

  5. CMD修复

    应该命令的路径被修改了. 试下在cmd下打入 path  命令看看.以下是正确的显示. PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\ ...

  6. Ubuntu学习总结-06 安装 Nginx

    Nginx是由俄罗斯人(zhan dou min zu)开发的一款高性能的http和反向代理服务器,也可以用来作为邮件代理.相比较于其他的服务器,具有占用内存少,稳定性高等优势. 一 Ubuntu源码 ...

  7. IOS基础之 (七) 分类Category

    一 Category 分类:Category(类目,类别) (OC有) 命名:原来的类+类别名(原来的类名自动生成,只要写后面的类别名,一般以模块名为名.比如原来类 Person,新建分类 Ct,新建 ...

  8. LocalDB简介和在VS2012及以上版本的使用

    http://www.cnblogs.com/fzrain/p/3812364.html?utm_source=tuicool LocalDB简介和在VS2012及以上版本的使用   之前一不小心把自 ...

  9. abstract class和interface 知多少!!!

    1.相同点   A. 两者都是抽象类,都不能实例化.   B. interface实现类及abstrct class的子类都必须要实现已经声明的抽象方法. 2. 不同点   A. interface需 ...

  10. ecshop后台导航修改教程说明

    ecshop后台导航修改教程说明 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2014-06-25   需要操作的文件为: 1.修改admin\includes\in ...