安装GeoIP2时出错:geoap2/geop2 v2.3.1需要maxmind/web service common



我在尝试安装GeoIP2时遇到此错误。不幸的是,错误消息不是很容易被谷歌浏览,我不知道如何修复它。很明显,有些东西丢失了,但我不确定是什么。我对作曲家不是很有经验。有人能帮我破译这个错误吗?

$ composer require "geoip2/geoip2":"~2.0"
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - geoip2/geoip2 v2.3.1 requires maxmind/web-service-common ~0.0.3 -> satisfiable by maxmind/web-service-common[v0.0.3, v0.0.4].
    - geoip2/geoip2 v2.3.2 requires maxmind/web-service-common ~0.0.3 -> satisfiable by maxmind/web-service-common[v0.0.3, v0.0.4].
    - geoip2/geoip2 v2.3.3 requires maxmind/web-service-common ~0.0.3 -> satisfiable by maxmind/web-service-common[v0.0.3, v0.0.4].
    - geoip2/geoip2 v2.4.0 requires maxmind/web-service-common ~0.0.3 -> satisfiable by maxmind/web-service-common[v0.0.3, v0.0.4].
    - geoip2/geoip2 v2.3.0 requires maxmind/web-service-common ~0.0.2 -> satisfiable by maxmind/web-service-common[v0.0.2, v0.0.3, v0.0.4].
    - geoip2/geoip2 v2.0.0 requires guzzle/guzzle 3.* -> satisfiable by guzzle/guzzle[v3.0.0, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.1.0, v3.1.1, v3.1.2, v3.2.0, v3.3.0, v3.3.1, v3.4.0, v3.4.1, v3.4.2, v3.4.3, v3.5.0, v3.6.0, v3.7.0, v3.7.1, v3.7.2, v3.7.3, v3.7.4, v3.8.0, v3.8.1, v3.9.0, v3.9.1, v3.9.2, v3.9.3].
    - geoip2/geoip2 v2.1.0 requires guzzle/guzzle 3.* -> satisfiable by guzzle/guzzle[v3.0.0, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.1.0, v3.1.1, v3.1.2, v3.2.0, v3.3.0, v3.3.1, v3.4.0, v3.4.1, v3.4.2, v3.4.3, v3.5.0, v3.6.0, v3.7.0, v3.7.1, v3.7.2, v3.7.3, v3.7.4, v3.8.0, v3.8.1, v3.9.0, v3.9.1, v3.9.2, v3.9.3].
    - geoip2/geoip2 v2.1.1 requires guzzle/guzzle 3.* -> satisfiable by guzzle/guzzle[v3.0.0, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.1.0, v3.1.1, v3.1.2, v3.2.0, v3.3.0, v3.3.1, v3.4.0, v3.4.1, v3.4.2, v3.4.3, v3.5.0, v3.6.0, v3.7.0, v3.7.1, v3.7.2, v3.7.3, v3.7.4, v3.8.0, v3.8.1, v3.9.0, v3.9.1, v3.9.2, v3.9.3].
    - maxmind/web-service-common v0.0.4 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - maxmind/web-service-common v0.0.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - maxmind/web-service-common v0.0.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.9.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.9.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.9.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.9.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.8.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.8.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.7.4 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.7.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.7.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.7.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.7.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.6.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.5.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.4.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.4.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.4.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.4.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.3.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.3.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.2.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.1.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.1.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.1.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.7 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.6 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.5 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.4 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - guzzle/guzzle v3.0.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - Installation request for geoip2/geoip2 ~2.0 -> satisfiable by geoip2/geoip2[v2.0.0, v2.1.0, v2.1.1, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.4.0].
  To enable extensions, verify that they are enabled in those .ini files:
    - C:PHPphp.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
Installation failed, reverting ./composer.json to its original content.

是的,只要安装cURL,它就会成功安装对于带有php5的Ubuntu:sudo apt-get install php5-curl

对于带有php7:sudo apt-get install php7.0-curl 的Ubuntu

对于带有php7.4:sudo apt-get install php7.4-curl 的Ubuntu

万一有人遇到同样的问题。。。

解决方案是在php.ini文件中启用curl扩展名,正如错误消息的最后部分所建议的那样:

To enable extensions, verify that they are enabled in those .ini files:
    - C:PHPphp.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

我刚从;extension=php_curl.dll中删除了分号,它就起作用了。

我还需要最新版本的GeoID(不是github文档建议的2.0):

composer require geoip2/geoip2:~2.4.0

最新更新