webentwicklung-frage-antwort-db.com.de

Kann ich default_socket_timeout von meinem PHP-Code aus ändern?

In meinem PHP-Skript stelle ich db2-Datenbanksicherungen wieder her. Sie werden größer und größer. Nun bekam ich nach + -30min nach der Ausführung des Skripts 500 Server Error. Diese Zeile befand sich in (mod_fastcgi.c.3352) response not received, request sent: 634 on socket: tcp:127.0.0.1:9090 for /wrational/restoredb.php?mode=restore&database=RATIONAL, closing connection in der Datei php-errors.log.

Ich dachte, dass das Setzen von set_time_limit (6000); 1 das Problem lösen würde, aber nicht. 

Der Trick war, default_socket_timeout in der php.ini-Datei zu erhöhen.

Gibt es eine Möglichkeit, default_socket_timeout vom PHP-Code zu ändern?

13
Radek

Mit diesem PHP Befehl:

ini_set("default_socket_timeout", 6000);

Oder fügen Sie die .htaccess-Datei mit dieser Zeile hinzu:

php_value default_socket_timeout 6000

Überprüfen Sie den aktuellen Wert mit phpinfo()

29
huysentruitw

hüten Sie sich vor der Tatsache, dass PHP einen Fehler mit default_socket_timeout und SSL hat. Es wird endlos warten, falls Sie HTTPS/SSL verwenden.

https://bugs.php.net/bug.php?id=41631

4
staabm

sie können die .htaccess-Datei line php_value default_socket_timeout 6000 hinzufügen/aktualisieren

1
user1548333