【问题标题】:gRPC working in terminal but not in laravel projectgRPC 在终端中工作,但不在 laravel 项目中
【发布时间】:2019-10-14 11:59:29
【问题描述】:

我已经按照 google https://cloud.google.com/php/grpc 的指示安装了 gRPC。

我添加了这两行

extension=protobuf.so
extension=grpc.so

当我从终端执行行时

sudo php -r "echo extension_loaded('grpc') ? 'yes' : 'no';"

它返回是,但是当我在 php 文件中这样做时

<?php
   echo extension_loaded('grpc') ? 'yes' : 'no';
?>

它返回编号。

我编辑了 /etc/php/php.ini 和 /opt/lampp/etc/php.ini (这是我用 phpinfo() 作为加载的 ini 文件找到的)。你们有什么想法吗?如果这与问题有某种相关性,我正在使用 Manjaro

编辑:

当我从 artisan 运行它时它可以工作,但是当我尝试从 lampp 运行时我得到这个错误:

PHP Startup: Unable to load dynamic library 'grpc.so' (tried: /usr/lib/php/modules/grpc.so (/opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/lib/libprofiler.so.0))

【问题讨论】:

  • 修改配置后有没有重启lampp?
  • 是的,多次。我什至重新启动了系统:)

标签: php laravel grpc


【解决方案1】:

/etc/php 目录下应该有两个php.ini 配置文件

这是树

/etc/php/7.3 ✹ ★ ᐅ  tree
.
├── cli
│   └── php.ini
├── fpm
│   ├── php.ini

我认为扩展只加载在 cli 特定配置上,因此可以在终端上运行,但不能在源文件上运行

您还需要在编辑 fpm 配置后重新启动 php-fpm 服务

sudo service php7.3-fpm restart

希望对你有帮助

【讨论】:

  • 我没有那种结构,因为我没有cli/fpm文件夹,只有一个php.ini。我使用的是lampp/xampp,所以我也没有服务作为fpm运行
  • 我个人建议在 Linux 上使用 Laravel Valet,而不是 XAMPP 和 LAMPP 带来的痛苦
  • 是的,似乎 Lampp 是问题所在,我使用 artisan serve 启动了服务器,并且成功了。现在我需要弄清楚lampp是怎么回事,或者切换到这种类型的开发。感谢您的提示!
  • 我收到此错误:PHP 启动:无法加载动态库 'grpc.so'(已尝试:/usr/lib/php/modules/grpc.so (/opt/lampp/lib/libstdc++ .so.6:找不到版本“CXXABI_1.3.9”(/usr/lib/libprofiler.so.0 需要)。知道如何解决这个问题吗?
  • 您需要准确定位grpc.so动态库所在的位置并通过绝对路径链接
【解决方案2】:

好的,这就是未来几代人的答案,如果你安装了 grpc,并且它可以与不同版本的 php 一起工作,并且你真的想让它与 lampp 一起工作,你应该尝试运行命令

 /opt/lampp/bin/php

如果输出是

PHP Startup: Unable to load dynamic library 'grpc.so' (tried: /usr/lib/php/modules/grpc.so (/opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/lib/libprofiler.so.0))

这个问题的解决方法是:

sudo cp /usr/lib/libstdc++.so.6 /opt/lampp/lib/

据我了解,这是因为 lampp 文件夹中的 libstdc++.so.6 已过时/不完整。无论如何,这是我的解决方案。希望我帮助了某人:)

【讨论】:

    猜你喜欢
    • 2017-08-23
    • 2019-11-21
    • 2015-09-29
    • 2014-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多