我已经设置了phpbrew,包括安装了所有要求,并使用以下命令成功编译了php-5.6.11:
sudo phpbrew --debug install php-5.6.11 +default+mysql+pdo+debug +apxs2 -- --with-mysql-sock=/var/run/mysqld/mysqld.soc我可以使用下面的phpbrewswitch脚本在php版本之间切换,这是我在这句话中找到的
#!/usr/bin/env bash
VERSION=$1
SOFILE=/usr/lib/apache2/modules/libphp$VERSION.so
CONFFILE=/etc/apache2/mods-available/php5.load
source ~/.phpbrew/bashrc
if [ -f $SOFILE ]; then
phpbrew switch $VERSION
phpbrew list
FILECONTENTS="LoadModule php5_module $SOFILE"
echo $FILECONTENTS > $CONFFILE
echo "Updated $CONFFILE"
sudo service apache2 restart
else
echo $VERSION "is not configured for apache"
phpbrew list
fi这个脚本只需使用phpbrew来切换php版本,并告诉apache对请求的版本使用.so文件,然后重新启动apache。(所有这些都是一个通讯方式,这样就可以轻松地来回切换了!)
但是,在本地php 5.6.11安装和phpbree5.6.11安装之间切换会导致mysql停止连接。phpinfo在两个版本上运行都很好,并显示相关信息,只显示FYI。我遗漏了什么?php.ini中有什么东西可以让mysql工作吗?这是我在用phpbrew编译时缺少的参数吗?任何建议都是非常感谢的,我真的很想让这个工作。
发布于 2016-02-05 19:03:22
我想通了。结果,我的php脚本中的mysql主机变量被设置为"localhost“。显式地将其设置为"127.0.0.1“完成了这个任务。不知道为什么本地主机没有解决而是什么问题。它起作用了!XD
发布于 2016-05-21 07:59:07
检查配置文件中的mysql套接字路径,它可能与其他版本php不同。
https://stackoverflow.com/questions/35230495
复制相似问题