【问题标题】:PHP 7.1 oAuth extension with Request Engine Support using Curl - OAUTH_REQENGINE_CURLPHP 7.1 oAuth 扩展,带有使用 Curl 的请求引擎支持 - OAUTH_REQENGINE_CURL
【发布时间】:2019-03-20 16:00:12
【问题描述】:
我从 ubuntu 18.04 创建了一个 Docker 镜像
我正在使用 php 7.1
问题是我需要在 Oauth 扩展上使用 curl 启用请求引擎支持。
这个问题的解决方案,Problems adding cURL to OAuth request engine support
没有解决我的问题。
采取的步骤:
- 我已经运行 PECL install oauth 和 PECL install oauth-2.0.3 到
重新安装 oauth 扩展
- 重新启动 apache service apache2 restart 没有成功。
我很乐意应要求提供更多信息。
【问题讨论】:
标签:
curl
oauth
libcurl
pecl
php-7.1
【解决方案1】:
我遇到了同样的问题,我在阅读了 PECL OAuth 模块的代码后才设法完全解决它。
从 Ubuntu 17.04 看起来 curl 位于 /usr/include/x86_64-linux-gnu/curl 而不是 /usr/include/curl,所以 OAuth 没有找到它,也没有启用 curl 作为请求引擎。
因此,作为临时解决方案,我对文件进行了符号链接。
以下是我为启用 curl 请求引擎而运行的命令:
# Uninstall oauth if already installed ('sudo pecl uninstall oauth')
sudo apt install libcurl4-gnutls-dev
cd /usr/include && sudo ln -s x86_64-linux-gnu/curl
sudo pecl install oauth
【解决方案2】:
在安装 oauth 之前必须安装 Curl,并且需要 libpcre3-dev。下面是 Dockerfile 的示例 sn-p:
# Curl
RUN apt-get install libcurl4-gnutls-dev
# OAuth
RUN apt-get install -y libpcre3-dev && pecl install oauth \
&& echo "extension=oauth.so" > /usr/local/etc/php/conf.d/docker-php-ext-oauth.ini