Wie setzt timeout für get_meta_tags() & get_headers()
Habe ich mit der get_meta_tags() & get_headers() PHP-Funktionen, und ein timeout-Wert bei der Webseite ist langsam oder reagiert nicht mehr. Weiß jemand, wie es zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie in der Lage sein, dies zu beeinflussen (wie es über die URL-Wrapper) mit der
default_socket_timeout
ini-Einstellung.Versuchen, entweder in der
php.ini
- Datei oder etwas zu tun, wieum einen 10 Sekunden timeout (Standard-Wert ist 60)
Den
get_headers
undget_meta_tags
- Funktion verwenden Sie die Standard - HTTP-Stream-Wrapper darunter. Sie können entweder ändern Sie die ini-Einstellung als gezeigt werden an anderer Stelle auf dieser Seite oder ändern Sie das Verhalten der Schutzfolie, und legen Sie eine bestimmte timeout:Beachten Sie, dass das ändern der Standard-HTTP-Stream-Kontext gilt für alle Funktionen, die mit es. Wenn Sie wiederherstellen möchten den timeout-Wert auf den ursprünglichen Standard-Einstellungen:
On a sidenote, wenn Sie rufen Sie keine Funktionen auf, die über einen HTTP-Stream-Wrapper, PHP wird auch automatisch bevölkern die variable
$http_response_header
im aktuellen Bereich, so dass Sie nicht haben, um Anrufget_headers
zusätzlich, z.B.stream_context_set_default
zurückressource
Typ und nimmtarray
(ich bekomme eine Fehlermeldung), so bin ich denn castressource
array, um es wieder in?Dies zu tun, wie geschrieben von @Gordon nur mit get_headers aber
stream_context_set_default
zurückressource
und nicht ein array, so dass ich nicht sicher bin, wie soll ich füttern, dass wieder in die gleiche Funktion. Es erwarten Sie ein array.In php 7.1 gab es einen 3. parameter Hinzugefügt
get_headers
. Also ich kam mit dieser. Wenn Sie auf eine nicht veraltete PHP-version die option Hinzugefügt, um die get Header nur noch anrufen, sonst wird der Standard-stick für den rest des Skript-Ausführung, bis jemand mir erklärt, wie es zu tun auf älteren php-Versionen.