2010-11-09 21 views
7

Uwielbiam sposób, w jaki Netbeans pomaga mi debugować moje aplikacje Magento (w XAMPP na 64-bitowym Windows 7), ale zauważyłem, że połączenie wydaje się upłynąć po okres. Punkty przerwania nie są już trafiane i muszę ponownie uruchomić sesję debugowania, co jest denerwujące. Wszelkie sugestie dotyczące przedłużania lub wyłączania limitu czasu debugowania?Dlaczego mój limit czasu sesji Netbeans Xdebug po okresie nieaktywności?

Nie widzę żadnych opcji w konfiguracji IDE lub Xdebug php.ini. W Xdebug stany dokumentacja:

Gdy URL zmienna XDEBUG_SESSION_START = nazwa jest dołączany do adresu URL, Xdebug emituje cookie z nazwę „XDEBUG_SESSION” i jako wartość wartość parametru URL XDEBUG_SESSION_START . Wygaśnięcie ciasteczka to jedna godzina. Cookie to jedna godzina.

, ale nie sugeruje, jak zmienić czas wygaśnięcia.

Odpowiedz

14

Znajdź plik php.ini i dodaj następujący wiersz do sekcji xdebug.

xdebug.remote_cookie_expire_time = 3600 

liczba jest czas w sekundach dla ciastka pozostaje aktywny, co domyślnie 3600 (1 godzina). Ustawiłem to na 36000 (10 godzin), co działa dobrze i zachęca mnie do restartowania procesu od czasu do czasu, aby zwolnić pamięć. Możesz ustawić go na 0 (nieograniczony), jeśli chcesz, chociaż odkryłem, że powodowało to dziwne zamarzanie tu i tam.

Pamiętaj, aby zrestartować serwer Apache, aby zmiany zostały wprowadzone.

+0

dzięki, spróbuję! –

+0

działa doskonale, bardzo pomocne dzięki :) –

+0

/etc/php5/apache2/php.ini (ścieżka jako wskazówka dla użytkowników Linux-a) – sbrbot

6

Jest to prawdopodobnie związane z konfiguracją Apache.

Prawdopodobną przyczyną jest skonfigurowany limit czasu, który określa, po jakim okresie serwer kończy proces, jeśli nic się nie dzieje ... zwykle ma sens, ale podczas debugowania możesz być po prostu zajęty patrzeniem na coś.

Moja konfiguracja jest nieco inna niż Twoja, ale być może mogę Ci pomóc.

W folderze apache/sites-available znajdują się pliki konfigurujące hosty wirtualne powiązane z domeną. W ciągu -Tags Twojej domeny i protokołu kładę

<IfModule mod_fcgid.c> 
    AddHandler fcgid-script .fcgi 
    IdleTimeout 300 
    IPCConnectTimeout 20 
    IPCCommTimeout 120 
    IdleScanInterval 120 
</IfModule> 

To zwiększone w moim przypadku dostępną okres czasu aż do czasu oczekiwania zostanie wyzwolony od 40 do 120 sekund.

Następnie (oczywiście) uruchom ponownie apache.

Może to pomaga.

+0

Miałem ten sam problem co Jonathan, to działało dla mnie. Dzięki! –

+0

Wydaje się, że jest to związane z czasem, w którym przeglądarka czeka bezczynnie, aby serwer WWW odpowiedział, podczas gdy pytanie dotyczy czasu życia sesji xdebug, domyślnie 1 godzina. Mam problem z odpowiedzią na tę odpowiedź, więc spróbuję. –

+1

Tak! Dziękuję Ci! Po wielu miesiącach pracy w końcu znalazłem odpowiednią kombinację wyszukiwanych słów, która doprowadziła mnie do tej odpowiedzi! Nowsze wersje apache/mod_fcgid używają dyrektywy 'FcgidIOTimeout' zamiast' IPCCommTimeout'. Ustawiłem moje na * 300 * na 5-minutową sesję debugowania potworów.Zgadzam się, że jest to odpowiedź na inny problem niż OP, ale jest to odpowiedź na mój problem, więc jestem szczęśliwy. – Luke

Powiązane problemy