PHP 7.0 und plötzlich kann Curl kein SSL mehr

  • Thread starter Thread starter CrimsonKing
  • Start date Start date
C

CrimsonKing

Guest
Hmtja. Da wollte ich mal meinen Bastelserver auf PHP7 hochziehen ...

PHP 7 funktioniert auch. Läuft auf dem Server. Sogar recht gut.
Was jetzt aber nicht mehr geht, ist pecl. Wahrscheinlich ist das Zufall und es geht einfach schon länger nicht mehr, aber mir gehen die Ideen aus...

Code:
% pecl search oauth
Connection to `ssl://pecl.php.net:443' failed: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?

Hmm:

Code:
% curl "ssl://pecl.php.net:443"
curl: (1) Protocol "ssl" not supported or disabled in libcurl

Curl ist aber mit OpenSSL kompiliert worden. Ich habe eben extra noch mal großzügig portmaster -R ftp/curl drüberlaufen lassen ...

Code:
(...)
configure: Configured to build curl/libcurl:

  curl version:  7.48.0
  Host setup:  amd64-portbld-freebsd10.3
  Install prefix:  /usr/local
  Compiler:  cc
  SSL support:  enabled (OpenSSL)
  SSH support:  no  (--with-libssh2)
 
(...)

Ideen?
 
Also der Aufruf curl "ssl://..." schlägt bei mir auch fehl, ich denke mal das ist einfach ein falscher Aufruf und hat nichts mit der Pecl-Fehlermeldung zu tun.

Schau mal in der Ausgabe von phpinfo(), welche Socket-Typen aktiv sind ("Registered Stream Socket Transports", ganz oben in der Übersicht).
Wenn dort ssl nicht auftaucht, dann liegt darin der Fehler.

Rob
 
Ahh!
pecl ruft php mit dem Schalter -n auf, daher liest es die php.ini nicht.

Schau mal in die Ausgabe von
Code:
$ php -ni
ob dort auch ssl bei "Registered Stream Socket Transports" auftaucht. Ich tippe: nein.

Rob
 
Danke, das hat funktioniert. :-)

Gibt es einen Grund für "-n", außer dass es wahrscheinlich etwas schneller lädt?
 
Warscheinlich war es dafür gedacht, dass das Skript auch funktioniert, wenn der Admin extrem krude Einstellungen in der php.ini vornimmt.

Rob
 
Hat ja super funktioniert. :mad:

Jetzt findet pecl das installierte pcre (pcre.h) nicht, aber das ist wahrscheinlich ein anderes Problem. Mal sehen.
 
Boah.

Code:
C_INCLUDE_PATH=/usr/local/include/ LIBRARY_PATH=/usr/local/lib/ LD_LIBRARY_PATH=/usr/local/lib/ pecl install oauth

Nun geht's.

net/pecl-oauth funktioniert natürlich noch nicht mit php70 zusammen. Wäre auch zu einfach.

Seufz.
 
Back
Top