Futás hosszú szkriptek php

Bár hosszú távon szkriptek php (5 perc vagy több) különböző okok miatt, általában nem kívánatos bizonyos helyzetekben tud segíteni. Egy egyszerű példa: az információs blokk import XML-tulajdonságok Bitrix 500 és 10000 elemeket, standard maximális futási időt is elég lehet - bár a szkript futtatása és a lépések, de lehet például, hogy lefagy a támogatási létre indexeket.

Ebben a cikkben úgy, hogy hosszú távon php scripteket apache + nginx, és azt, korlátozások böngészők.

Az első dolog, amit meg kell vizsgálni - ez php konfiguráció „max_execution_time” és a „session.gc_maxlifetime” (a maximális futási időt és munkamenet idő, sorrendben). Meg lehet telepíteni htaccess (paraméterek beállítása másodpercben):

valamint közvetlenül a php script:

vagy, persze, a php.ini-ben

Azonban, még ha olyan nagy érték a max_execution_time, közben egy nginx volna, ha az idő még nem járt le, akkor egy hibaüzenetet kap, mint ez:

504 Gateway Timeout hibát használ Nginx

Ez a helyzet lehet korrigálni A konfigurációs fájl szerkesztése nginx (Debian rendszerekben van - /etc/nginx/nginx.conf):

A teszt a leírt beállítások, én itt megemlíteni két írás - egyszerű start-up oldalt és átvételi Ajax (ez fontos lehet, mert a böngésző beállítások eltérhetnek az egyszerű oldalt, és XHR jelent).


A szkript Ajax: