Curl update: phpinfo zeigt immer noch alte Version an.

Andreas2022

New Member
Hallo zusammen,
ich habe per SSH-Terminal Curl erfolgreich auf Version 7.86.0 upgedatet. Wenn ich phpinfo aufrufe, wird mir jedoch immer noch die alte Curl-Version 7.61.1 angezeigt.
Was muss ich tun, um PHP (neueste Version) und die neue Curl-Version zusammenzubringen?

Ich verwende Plesk Obsidian Vers. 18.0.48, die Linux-Version ist 4.18.0 (AlmaLinux 8.7).

Herzlichen Dank im voraus für eure Hilfe!
Andreas
 
Du meinst php-curl?
Schau mal in /opt/plesk/php/8.0/etc/php.d/curl.ini oder /opt/plesk/php/8.1/etc/php.d/curl.ini (je nach deiner PHP-Version) ob da auch
Code:
1:; Enable curl extension module
2:extension=curl.so
drin steht?
Vielleicht mal PHP-FPM in den PHP-Einstellungen der Domain neu starten, damit das neue Modul geladen wird.
 
Last edited:
Das ist aber nicht das PHP-Curl-Modul, was über Plesk installiert wurde, sondern die Version für die Kommandozeile.

Die von Plesk PHPs sind so zu finden: find /opt/plesk/php/ -name curl.so
Welches PHP du verwendest bei deiner Domain weiß ich nicht.
Soweit ich weiß, muss die neue kompilierte Version auch zum benutzen PHP passen.
 
Last edited:
Hmmm, wenn ich "yum install php-curl" im Terminal eingebe, erhalte ich folgende Meldung:

Last metadata expiration check: ...
Package php-common-7.2.24-1.module_el8.3.0+2010+7c76a223.x86_64 is already installed.
Dependencies resolved. Nothing to do. Complete!

Was bedeutet das?
 
Ich habe ein PHP-Skript erstellt, das mehrere Multi-Curl-Prozesse hintereinander abarbeitet. Hintergrund ist folgender. Ich habe eine Liste von ca. 10.000 Wikipedia-URLs. Ich springe in jede dieser URLs und greife mir wiederum auf diesen Seiten eine weitere URL (die Commons-Seite, wo die zum Artikel passenden Bilder gelistet werden), wo ich reinspringe. Diese URL hat wiederum einige URLs (nämlich die Bilder), wo ich reingehe und die Lizenzdaten auslese. Das ganze funktioniert eigentlich, jedoch immer nur für einige hundert Adressen, dann beendet das PHP-Skript sich selbst, ohne Fehlermeldung. Ich habe die Timeout-Einstellungen von CURL und PHP hochgesetzt, aber ohne Erfolg. Nun dachte ich, dass es vielleicht an einer veralteteten CURL-Version liegen könnte (7.61.1 <-> 7.86.0) und wollte das mal prüfen.
 
Was heißt denn, es beendet sich von selbst? Absturz?
Dann lasse es doch mal als PHP-Programm in der Kommandozeile laufen und schau dann ins syslog, dann siehst du ob was abstürzt oder wegen zu viel Speicher beendet wird?
 
Nein, kein Absturz. Cron meldet, dass der Job erfolgreich beendet wurde (Status 200). Jedoch wurden nur einige 100 Datensätze abgearbeitet. Merkwürdig ist, dass sich die Zahl der abgearbeiteten Daten nach und nach erhöht, je öfter ich das Skript laufen lasse.
Wie gesagt, kenne ich mich mit dem Kommandozeilen-Programm nicht aus, hier bräuchte ich etwas Hilfe, was genau ich da machen muss...
 
Dein PHP-Programm läuft auf dem Webserver? Vielleicht stürzt ja der HTML-Parser ab, nachdem php-curl die Seite eingelesen hat.
Du solltest bitte mal ins PHP-FPM- und Server-Error-Log deiner Domain sehen, was da passiert wenn’s nicht weiter geht.

Wo hast du das Bot-Programm denn her?
 
Das ganze funktioniert eigentlich, jedoch immer nur für einige hundert Adressen, dann beendet das PHP-Skript sich selbst, ohne Fehlermeldung.
Q&D:
Gestalte das Script so um, daß es sich nach einer bestimmten Zahl verarbeiteter Adressen rekursiv selber neu aufruft. So umgehst du diverse Limits.
Ist sicher nicht die sauberste Lösung, funktioniert aber...
 
Back
Top