Laravel 拉维尔5号+;宅地+;HHVM+;PGSQL=未找到驱动程序
我的PHP项目使用PGSQL。它在我的开发机器上从Homestead成功运行。一旦我将Laravel 拉维尔5号+;宅地+;HHVM+;PGSQL=未找到驱动程序,laravel,homestead,Laravel,Homestead,我的PHP项目使用PGSQL。它在我的开发机器上从Homestead成功运行。一旦我将hhvm:true添加到homestead.yaml中的项目中,并且设置--我的web应用程序抛出一个pdo异常,但找不到驱动程序。当我移除hhvm:true并重新提供宅基地时,例外情况消失了 显然,HHVM的配置不包括PGSQL驱动程序 我该怎么纠正呢 您没有提供有关设置的详细信息,因此不清楚是否安装了Postgres驱动程序。Postgres不支持开箱即用。您必须自己构建和/或安装它 脸谱网有一个独特的功能
hhvm:true
添加到homestead.yaml中的项目中,并且设置--我的web应用程序抛出一个pdo异常,但找不到驱动程序。当我移除hhvm:true
并重新提供宅基地时,例外情况消失了
显然,HHVM的配置不包括PGSQL驱动程序
我该怎么纠正呢 您没有提供有关设置的详细信息,因此不清楚是否安装了Postgres驱动程序。Postgres不支持开箱即用。您必须自己构建和/或安装它
脸谱网有一个独特的功能。PGSQL尚未(尚未)集成到HHVM中,但Facebook的页面指向外部GitHub项目,该项目位于:
以下是项目说明的摘要;您可以自己在README.md
文件中读取它们
源代码构建
如果您想从源代码构建它,则需要安装hhvm-dev和libpq-dev包。安装后,以下命令将生成扩展:
$ cd /path/to/source
$ hphpize
$ cmake .
$ make
这将生成一个pgsql.so文件,即可动态加载的扩展名。将此文件复制到/etc/hhvm/pgsql.so
预构建二进制文件
如果您不想构建它,那么在单独的“releases”分支中有一些流行发行版的预构建二进制版本:
再次将下载的pgsql.so文件复制到/etc/hhvm/pgsql.so
配置
无论您是从源代码构建还是安装二进制文件,都需要告诉HHVM在哪里可以找到它。编辑您的配置文件(通常为/etc/hhvm/php.ini
),如果不存在,则添加这些文件:
extension_dir = /etc/hhvm
hhvm.extensions[pgsql] = pgsql.so
您可以通过运行
hhvm --php -r 'var_dump(function_exists("pg_connect"));'
如果一切正常,这将输出bool(true)
您可能需要重新启动HHVM,让服务器接收扩展。这可能应该作为GitHub问题发送给Laravel,因为它确实应该捆绑在一起。。。