失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > exif linux php扩展_LNMP环境为PHP添加exif扩展

exif linux php扩展_LNMP环境为PHP添加exif扩展

时间:2019-10-15 01:38:28

相关推荐

exif linux php扩展_LNMP环境为PHP添加exif扩展

在使用时php报出如下错误:Call to undefined function gemvary\exif_imagetype()

好吧,exif扩展没安装...

通过打印phpinfo()查看得知mbstring扩展是有的,exif扩展没有

如果mbstring也没有,也可以参考以下exif扩展的安装过程;

安装过程基本类似的;

进入主题:

1、查看当前环境PHP的版本号和安装目录whereisphp

结果:

[root@xiaojunexif]#whereisphp

php:/usr/bin/php/usr/lib64/php/etc/php.d/etc/php.ini/usr/include/php/usr/local/php/usr/share/php/usr/local/php/bin/php/usr/share/man/man1/php.1.gz

[root@xiaojunexif]#/usr/local/php/bin/php-v

PHP7.1.7(cli)(built:Mar1611:06:26)(NTS)

Copyright(c)1997-ThePHPGroup

ZendEnginev3.1.0,Copyright(c)1998-ZendTechnologies

那么phpize的位置就是 /usr/local/php/bin/phpize

2、进入php的源码目录#这是我电脑上的路径,得改成自己服务器上的路径

cd/www/lnmp1.4/src/php-7.1.7/ext/exif

进入扩展目录后进行初始化:/usr/local/php/bin/phpize

命令执行后当前目录会多几个文件,只要有configure这个文件就行

然后再检查配置,输入:./configure--with-php-config=/usr/local/php/bin/php-config

如果有报错说明路径不对,使用whereis php-config查看服务器上此文件的路径

接下来再依次执行这两个命令:make

makeinstall

执行完会有类似如下信息:[root@xiaojunexif]#makeinstall

Installingsharedextensions:/usr/local/php/lib/php/extensions/no-debug-non-zts-0303/

这个目录就是扩展安装后的存放目录;

3、修改php.ini引入扩展vi/usr/local/php/etc/php.ini

在最后面加入:extension=exif.so

然后保存,重启PHP就完事了;

需要注意的是exif.so必须放在mbstring.so的后面,否则会出错;

可能出现的问题:

重启PHP时提示:NOTICE: PHP message: PHP Warning: Module 'mbstring' already loaded in Unknown on line 0

意思是mbstring这个扩展已经加载过了,还尝试引入;

解决办法:

PHP加载模块有两种方式,一种是通过php.ini 加载模块,另一种是通过编译时的参数加载模块。

这里出这个提示,那么mbstring应该就是属于后者,只需要php.ini中将其注释掉就行了;extension=mbstring.so

输入/usr/local/bin/phpize后提示:Cannot find config.m4. Make sure that you run /usr/local/bin/phpize in the top level sourc

我是将openssl扩展内的config0.m4文件改成config.m4就没提示了;cd../openssl

cp./config0.m4./config.m4

至于为什么openssl扩展的config.m4为什么会影响到安装其它扩展,暂不得而知;

如果觉得《exif linux php扩展_LNMP环境为PHP添加exif扩展》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。