Heroku 正式不支持 PHP,所以我需要手动添加 PHP 扩展。我在主目录上创建了一个php.ini
文件:
extension_dir = "/app/www/ext/"
extension=mongo.so
extension=oauth.so
extension=solr.so
所有扩展文件都位于主目录中的ext
文件夹中。Mongo和OAuth扩展运行良好,但是当Solr添加时,apache给了我以下错误:
PHP Warning: PHP Startup: Unable to load dynamic library '/app/www/ext/solr.so' - /lib/libc.so.6: version `GLIBC_2.14' not found (required by /app/www/ext/solr.so) in Unknown on line 0
。显然,Solr扩展不起作用。我在 Heroku 上使用 Websolr 插件,不幸的是,Heroku 和 Websolr 都不愿意帮助我解决这个问题。Heroku说"PHP不是官方支持的",Websolr说"问Heroku"。
因此,任何帮助将不胜感激。
似乎没有直接的解决方案,但我找到了解决方法。无需使用solr.so
扩展,而是可以从此处使用开源solr-php-client
。它确实需要编译器,因此在 Heroku 上没有 apache 错误。