二,zabbix与php的一些问题
zabbix 检查先决条件
一、php-bcmath 不支持
php 安装 bcmath 扩展(编译安装)
PHP的linux版本需要手动安装BCMath扩展,在PHP的源码包中默认包含BCMath的安装文件,
只需手动安装一次即可。
编译安装
1.进入PHP源码包目录下的ext/bcmath目录。
2.执行phpize命令,phpize命令在PHP安装目录的bin目录下,如/usr/local/php-5.6.36/bin/phpize。
(phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,
可以使用phpize。)。使用如下:
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/ #进入刚解压的模块中使用。
/usr/local/webserver/php/bin/phpize
./configure –with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
3.执行./configure --with-php-config=/usr/local/php/bin/php-config。
4.执行make && make install。
5.将安装完成后得到bcmath.so文件拷贝到php.ini中extension_dir配置的目录中。
开启 extension_dir,后面自己配置扩展模块的目录。
6.在Dynamic Extensions配置块下添加一行extension=bcmath.so。
7.重启php服务即可。
8.使用命令 php -m | grep bcmath ,查看这个模块是否加载成功。
其实这个模块在编译php的时候可以直接打开 后面加上参数 --enable-bcmath 即可
二、php的参数在php.ini中搜索。
PHP选项“max_input_time” 按照要求设置
PHP选项“date.timezone” 设置为 PRC
PHP选项“always_populate_raw_post_data” 这个报错直接去掉注释即可
三、解决php的gd库不支持jpeg和freetype的问题。
1,下载jpeg和freetype的源码包,解压安装,预编译目录在 /usr/local/freetype 和 /usr/local/jpeg
编译例如 ./configure --prefix=/usr/local/php/jpeg --enable-shared --enable-static
然后 make && make install
2,重新编译php,注意先不带gd,不要--with-gd。编译如下:
./configure
--prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc \
--enable-fpm --enable-pcntl --enable-mysqlnd --enable-opcache --enable-sockets \
--enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-zip \
--enable-ftp --enable-soap --enable-xml --enable-mbstring --enable-bcmath \
--disable-rpath --disable-debug --disable-fileinfo \
--with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd \
--with-pcre-regex --with-iconv --with-zlib --with-mcrypt --with-openssl \
--with-mhash --with-xmlrpc --with-curl --with-imap-ssl \
--with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype
然后make && make install
此时PHPinfo()中没有gd库。
3,接下来在php源码解压后目录下的ext/gd 中执行phpize 后编译安装gd。
./configure --with-php-config=/usr/local/php/bin/php-config \
--with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype
make && make install
启动php-fpm 发现gd库出现了,并且支持jpeg和freetype。
至此解决这个问题,zabbix服务端可以检测出来。
四、PHP LADP warnning 解决。php gettext 也是类似解决。
http://www.cnblogs.com/bigdevilking/p/9440098.html
# 出现告警是因为ldap模块不存在,须要编译生成此模块并重新加载
进入PHP源码包目录下的ext/ldap 目录 。
[root@DaMoWang php-7.2.7]# cd /usr/src/php-7.2.7/ext/ldap/ # 进入模块所在的源码位置
[root@DaMoWang ldap]# ls
config.m4 config.w32 CREDITS ldap.c ldap.mak LDAP_Win32_HOWTO.txt php_ldap.h tests
[root@DaMoWang ldap]# /usr/local/php/bin/phpize # 编译PHP扩展的工具,主要是根据系统信息生成对应的configure文件
Configuring for:
PHP Api Version: 20170718
Zend Module Api No: 20170718
Zend Extension Api No: 320170718
[root@DaMoWang ldap]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap
&& make && make install #配置 编译 安装
执行过程中可能会有如下报错
configure: error: Cannot find ldap.h
解决办法 : yum -y install openldap openldap-devel
configure: error: Cannot find ldap libraries in /usr/lib
解决办法 : cp -frp /usr/lib64/libldap* /usr/lib/
[root@DaMoWang ldap]# vim /etc/php.ini # 编辑php.ini
# 找到 ;extension=ldap 的行 把注销去掉 , 5版本的php添加extension=ldap.so
五,zabbix最后一步安装报错
Details Cannot create the configuration file.
Unable to create the configuration file.
(细节 无法创建配置文件。无法创建配置文件。)
解决:设置 web服务器用户在zabbix网页的conf/目录具有写权限,配置文件会自动保存。
设置目录的 w 权限即可
chmod 777 conf/
最新文章
- Django的views中的request
- java JedisUtils工具类
- js简单的工厂模式
- SQL SERVER 2008 R2配置管理器出现“远程过程调用失败”【0x800706be】的解决办法
- UVa(1658),Admiral,海军上将,拆点,MCMF
- android 自定义进度条颜色
- windows Phone 浏览器窗口的尺寸
- VMT &; DMT
- 【Stage3D学习笔记续】真正的3D世界(一):透视矩阵
- UDP 广播 Java
- img 中的src的应用
- CSU 1506(最小费用最大流)
- Redis + keepalived 高可用群集搭建
- apache配置多个虚拟目录站点
- Spring详解(四)------注解配置IOC、DI
- component及刚体rigidbody用法
- bzoj:4105: [Thu Summer Camp 2015]平方运算
- FFMpeg for PHP
- centos7 安装 transmission
- MySQL 5.7 关闭严格模式
热门文章
- 使用OPCache提升PHP的性能
- Linux系列(16) - 其他帮助命令
- localStorage util
- docker network 参数
- 51nod1821-最优集合【贪心】
- python爬虫抓取中国最好大学排名1 	清华大学 	北京 	94.0 	100.0 	97.70% 	清华大学 2 	北京大学
- SQL Server 命令备忘录(持续更新...)
- JVM学习笔记——栈区
- PGSLQ并发控制
- 土壤稳定性评估(ArcPy实现)