您好,登录后才能下订单哦!
这篇文章主要介绍linux配置php.ini不起作用的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
linux配置php.ini不起作用的解决办法:1、将php.ini放到指定目录下;2、开启命令时使用“-c”参数指定要读的配置文件路径。
本文操作环境:linux5.9.8系统、PHP7.1版,DELL G3电脑
linux上修改php.ini配置添加扩展时不生效
因初次编译安装php时没有开启openssl, 导致请求https网站报错, 为此需要手动编译openssl扩展然后添加到php.ini中. 问题就在自己明明已经编译安装生成openssl.so的步骤都没有错, 也已经将extension=openssl.so加入php.ini中,服务器也重启了, 但是无论是访问phpinfo()打印的出内容还是直接命令行php -m打印加载的模块都没有显示有加载openssl.
对于以上问题, 其实问题就在如果自己编译生成的openssl.so没有问题, php.ini配置也加了,还是没有生效那么就要想到自己改的php.ini不是被加载的那个. 如何验证?
1. web模式访问 phpinfo()打印出的内容. 找到如下图所示信息, 第一行为php会在什么目录下需找php.ini配置文件, 第二行就是实际加载的php.ini文件, 没有就是php系统默认的咯. 解决办法: 要生效很简单就是将php.ini放到那个第一行所示目录下即可 . (可能很多人的文件是放在etc下)
2. php命令行模式加载的php.ini(很有可能和web模式加载的不一样); linux上先将目录切换都你php安装目录的bin下, 然后使用 ./php --ini会显示如下图信息; 第一行为php会在哪个目录下寻找php.ini文件, 第二行是实际加载的php.ini文件路径, none就是什么配置文件都没有用,使用了系统的默认配置. 解决办法: 将你的php.ini文件放到那个目录下, 或者开启命令时使用-c参数指定要读的配置文件路径. (例如php -c /usr/local/php.ini --ini 看下指定的是不是生效)
此外因为php命令行(cli) 模式下加载配置位置的不一样, 比如扩展目录(可通过php -i 命令输出的内容找到extension_dir字段就是),假设你要添加一个openssl扩展, 那么你将extension=openssl.so加入到php.ini, 但是如果你的openssl.so不在extension_dir字段所指的目录下, 你用php -m 查看加载的扩展是无法看到的,所以要么配置中写绝对路径或将扩展放对地方。
Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,使用Linux能运行主要的Unix工具软件、应用程序和网络协议。
以上是“linux配置php.ini不起作用的解决方法”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。