【问题标题】:PHP HTTP extension on Docker alpine imageDocker alpine 图像上的 PHP HTTP 扩展
【发布时间】:2020-05-23 06:34:57
【问题描述】:

我正在尝试在我的 PHP alpine 映像上安装/启用 PHP http 扩展。

我的应用程序的composer.json 文件包含"ext-http": "*",因此是我的目标。

我的 Dockerfile(相关部分)如下:

# PHP-FPM Base Image
FROM php:7.2.26-fpm-alpine

# Install PHP extensions
RUN apk add --update --virtual .build-deps autoconf g++ make zlib-dev curl-dev \
  && pecl install raphf propro \
  && docker-php-ext-enable raphf propro \
  && pecl install pecl_http \
  && echo -e "extension=raphf.so\nextension=propro.so\nextension=http.so" > /usr/local/etc/php/conf.d/docker-php-ext-http.ini \
  && rm -rf /usr/local/etc/php/conf.d/docker-php-ext-raphf.ini \
  && rm -rf /usr/local/etc/php/conf.d/docker-php-ext-propro.ini \
  && apk del .build-deps \
  && rm -rf /tmp/*

但是在运行 composer update 时,我收到以下警告:

PHP Warning:  PHP Startup: Unable to load dynamic library 'http.so' (tried: /usr/local/lib/php/extensions/no-debug-non-zts-20170718/http.so (Error relocating /usr/local/lib/php/extensions/no-debug-non-zts-20170718/http.so: uidna_IDNToASCII: symbol not found), /usr/local/lib/php/extensions/no-debug-non-zts-20170718/http.so.so (Error loading shared library /usr/local/lib/php/extensions/no-debug-non-zts-20170718/http.so.so: No such file or directory)) in Unknown on line 0

之后,composer update 命令失败:

The requested PHP extension ext-http * is missing from your system. Install or enable PHP's http extension.

警告中的http.so.so 部分让我暂停,让我认为在错误的位置查找文件。

我的参考是以下 Dockerfile:https://hub.docker.com/r/realpaul/docker-php/dockerfile

有人可以帮我调试这个问题吗?谢谢!

【问题讨论】:

    标签: php docker composer-php alpine


    【解决方案1】:

    该错误消息的一部分内容如下:

    http.so: uidna_IDNToASCII: 找不到符号

    根据PECL_HTTP is installed, but does not work,此错误消息指向iconv.so 不可用。请尝试通过回显到/usr/local/etc/php/conf.d/docker-php-ext-http.ini 来启用它。

    此外,如果您假设http.so 没有放置在 PHP 期望的位置,您应该尝试在正在运行的容器中启动 bash 以查看该文件是否存在。但是由于该文件引发错误,您可以假设它在那里

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-14
      • 1970-01-01
      • 2022-06-11
      • 1970-01-01
      • 1970-01-01
      • 2021-12-06
      • 2013-04-18
      相关资源
      最近更新 更多