![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Cześć.
Piszę z dość dziwnym problemem - potrzebuję zadeklarować, aby wszystkie moje skrypty na moim hostingu były przerywane, jeśli długość ich pracy przekroczy 57 sekund. Od razu więc zadeklarowałem na początku pliku ten myk:
Ku mojemu zdziwieniu - to nic nie dało. Poszedłem o krok dalej i dorzuciłem coś takiego:
to również nic nie dało. Na koniec pokusiłem się o htaccess: Kod <IfModule mod_php5.c> php_value max_execution_time 57 </IfModule> również - nic. Napisałem do supportu hostingu linuxpl.com - zawsze odpowiadają na moje problemy w ciągu kilku sekund, na czacie. Kazali (jak zwykle) przesłać zgłoszenie na ich adres e-mail i kilka minut później dostałem odpowiedź, że mam zadeklarować ten parametr w directadminie (można tam zmieniać kilka podstawowych funkcji, które z reguły dostępne są w php.ini). Zmieniłem tam parametr max_execution_time ze 150 sekund na 57. Niestety - dalej nic to nie dało. Support przestał mi odpisywać, skończyło się tylko na tym, że "sprawdzają to". Poszedłem więc na inny hosting - hekko.pl. Sytuacja dokładnie taka sama - nie mogę nijak zmienić maksymalnego czasu wykonywania skryptu (też grzebałem w direct adminie, w kodzie PHP, w htaccess). Wszystkie te hostingi mają safe_mode wyłączone (wiem, że to jest wymóg dla funkcji set_time_limit, czytałem dokumentację). Czy ktoś z Was spotkał się już z takim problemem? Co polecacie zrobić, żeby po 57 sekundach mielenia skryptu, ujrzeć ten fantastyczny błąd: Cytat Fatal error: Maximum execution time of 57 seconds exceeded ![]() Dzięki. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
zamiast sleep() daj nieskonczona petle
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Efekt dokładnie taki sam, próbowałem już tego. Skrypt zwraca mi za każdym razem "70" co świadczy, ze wykonywał się 70 sekund. Ten post edytował Michael2318 15.06.2017, 10:18:44 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
Pewnie masz zablokowane te funkcje (tzn nie możesz zmieniać tych parametrów).
Dodatkowo taki fajny myk ma ta funkcja w normalnym hostingu: When called, set_time_limit() restarts the timeout counter from zero. In other words, if the timeout is the default 30 seconds, and 25 seconds into script execution a call such as set_time_limit(20) is made, the script will run for a total of 45 seconds before timing out. Może chodzi Ci o ini_set('max_execution_time', 57); -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 06:31 |