二,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/

转载于:https://www.cnblogs.com/fengfengyang/p/10174054.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值