Comments (7)
Hey! Thanks for the report.
This option is wrapped in #if PHP_HTTP_CURL_VERSION(7,43,0)
.
Nothing in pecl_http depends on ext/curl, this is a pretty-hard-to-beat-to-death myth.
What could be the reason for you this to happen, though, is that PHP links to a different libcurl, i.e. it includes headers for curl >= 7.43 but links to libcurl.so < 7.43
Looking at phpinfo() output might give a hint.
from ext-http.
E.g:
$ ./sapi/cli/php -i | grep -A10 "HTTP Support" 0 ↵ Tue, 10:58 •
HTTP Support => enabled
Extension Version => 3.0.1dev
Used Library => Compiled => Linked
libz => 1.2.8 => 1.2.8
libcurl => 7.47.1 => 7.47.1
libevent => 2.0.22-stable => 2.0.22-stable
libidn (IDNA2003) => 0.29 => unknown
Directive => Local Value => Master Value
http.etag.mode => crc32b => crc32b
from ext-http.
There's no curl in my PHP, and no extension except pecl_http links against libcurl.so. The Installed curl version around here is 7.47.0-1ubuntu2, and I've tried to point --with-http-libcurl-dir= to a libcurl that 7.48.0 that is not in the default library search path, but pecl_http seems to pick it up correctly:
$ ldd ~/lib/php-ext/http.so | grep curl
libcurl.so.4 => ~/src/curl48/lib/libcurl.so.4 (0x00007ff7dd04f000)
$ php -i | grep -i curl
libcurl => 7.48.0 => 7.48.0
$ ldd `which php` | grep -i curl
$
$ php -i | grep -A10 "HTTP Support"
HTTP Support => enabled
Extension Version => 3.0.1
Used Library => Compiled => Linked
libz => 1.2.8 => 1.2.8
libcurl => 7.48.0 => 7.48.0
libevent => disabled => disabled
libidn (IDNA2003) => 0.29.1 => unknown
Directive => Local Value => Master Value
http.etag.mode => crc32b => crc32b
from ext-http.
Okay, just checked the curl sources, seems that this option is only available if libcurl was built with GSSAPI support.
from ext-http.
If It were not for the output of php -i
claiming that both curl versions were 7.48.0, I'd assume that the RPATH in http.so is evaluated at lower priority than the one in the php binary, causing the system curl 7.47.0 to be loaded / used to resolve the symbols in http.so.
Indeed this problem only occurs if I build pecl_http against the curl 7.48.0 which does #undef HAVE_GSSAPI
from ext-http.
Building curl 7.48.0 with GSS support does indeed prevents the Could not set option proxy_service_name
notice.
from ext-http.
Okay, thank you for verification.
from ext-http.
Related Issues (20)
- Build failure `fatal error: 'ext/raphf/php_raphf_api.h' file not found` HOT 1
- pecl install pecl_http error on mac OS catalina HOT 6
- Git merge conflict in the source code HOT 2
- Compilation Error HOT 1
- Build error with php 7.4.13 on master and v4.0.0beta1 HOT 1
- Parsing url with unicode characters HOT 2
- PHP 8.0 - Windows 10 x64 - Unable to load dynamic library 'http' HOT 1
- BROTLI lib version not displayed HOT 5
- PHP 8.1: Implement __serialize() and __unserialize() HOT 3
- Test failure since libcurl 7.77 HOT 2
- ext-http delays PHP startup by 5 seconds on macOS HOT 18
- Test failure with 8.1.0beta3
- HTTPS does not seem to work on Windows? HOT 17
- Segfault with libcurl 7.81 HOT 4
- Cookie tests fail for 3.2.5 on CentOS 7 with custom-built php/curl HOT 3
- Installing on FreeBSD after 4.2.1 HOT 3
- Can not install in PHP 8.2 Alpine docker image HOT 1
- Windows; extension loaded but offers no functions? HOT 5
- Test failing with libcurl 8.0 HOT 1
- .ddl for php 8.2 ? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ext-http.