disable-tls php,PHP
可通过创建包含phpinfo()函数的文件并访问,或在命令行运行相应命令来查找php.ini文件路径。常见错误如缺少socket、cURL或OpenSSL扩展,需在php.ini中启用对应扩展。调试时可设置display_errors为On以显示错误。为PHP7安装Memcache扩展需手动编译源码并配置。修改php.ini后需重启PHP-FPM服务使配置生
如何查看 php.ini 文件路径?
想知道你的PHP配置究竟藏在哪里吗?有个简单又直接的方法:新建一个名为 test.php 的文件,里面只需写入这行代码:
然后,通过浏览器访问这个文件,你会看到一个信息量巨大的页面,详细列出了PHP的所有配置和已加载的扩展。关键信息就在其中——找到 Loaded Configuration File 这一项,它指向的路径就是你正在生效的 php.ini 文件了。
当然,如果你更喜欢命令行的高效,直接运行下面这条命令也能达到同样效果(如果系统安装了多个PHP版本,记得确认使用的是正确的 php 命令):
php -r "phpinfo();"
顺带一提,在本地运行一个PHP文件也很简单:
php [-f] test.php
几种错误提示及对应的解决办法
开发过程中遇到错误提示再正常不过,关键在于如何快速定位并解决。下面这几种常见错误,你是否也遇到过?
提示:
PHP Fatal error: Uncaught Error: Call to undefined function socket_create()
解决办法:
问题通常出在缺少网络套接字支持。你需要打开 php.ini 文件,找到并启用 extension=php_sockets.dll(在Windows环境下)或对应的Unix扩展。
提示:
PHP Fatal error: Uncaught Error: Call to undefined function curl_init()
解决办法:
这个错误表明cURL扩展没有启用。cURL是处理HTTP请求的利器。解决方法同样是编辑 php.ini 文件,取消注释或添加一行 extension=php_curl.dll(Windows)或对应的Unix扩展配置。
提示:
The openssl extension is required for SSL/TLS protection but is not a vailable. If you can not enable the openssl extension, you can disable this error, at your own risk, by setting the 'disable-tls' option to true
解决办法:
当需要进行加密通信时,OpenSSL扩展必不可少。要解决这个警告,必须在 php.ini 文件中启用OpenSSL扩展,即确保有 extension=php_openssl.dll(Windows)或对应的配置存在并生效。

在开发环境下直接在页面显示出错信息
调试代码时,让错误信息直接显示在页面上能极大提升效率。要实现这一点,只需修改 php.ini 文件,找到 display_errors 这一项,将其值设置为 On。这样一来,任何语法错误或运行时警告都会清晰地呈现在浏览器中,帮你快速找到问题所在。
安装 Memcache (not Memcached) for php7
在PHP 7早期,官方PECL仓库并未提供兼容的Memcache扩展,这就需要我们手动从源码编译安装。以下是具体步骤(以2016年10月的情况为例):
步骤一:下载并解压源码
wget https://github.com/websupport-sk/pecl-memcache/archive/NON_BLOCKING_IO_php7.zip
unzip NON_BLOCKING_IO_php7.zip
cd pecl-memcache-NON_BLOCKING_IO_php7
步骤二:编译
/usr/local/php7/bin/phpize && ./configure --enable-memcache --with-php-config=/usr/local/php7/bin/php-config && make
这里有个关键点:务必使用你PHP 7安装路径下的 phpize 和 php-config 工具,这是编译成功的前提。
步骤三:放置 so 文件到正确位置
cp modules/memcache.so /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/memcache.so
目标路径从哪里找?运行 phpinfo() 函数,查看输出结果中的 extension_dir 字段,它指明了扩展的标准存放目录。
步骤四:配置
echo 'extension=memcache.so' > /usr/local/php7/etc/php.d/memcache.ini
同样,phpinfo() 页面里的 Scan this dir for additional .ini files 字段会告诉你额外的配置文件应该放在哪个目录。
步骤五:重启服务使扩展生效
service php-fpm restart
修改 php.ini 后让配置生效
记住,无论你修改了 php.ini 中的什么配置,无论是启用了新扩展还是调整了参数,最后一步总是相同的:重启你的PHP-FPM服务,让改动生效。
service php-fpm restart
这就像给系统打了个招呼:“嘿,新规则来了,请注意一下。” 完成这一步,你的所有配置变更才会真正被应用。


































