2010-11-09 15 views
7

Mi piace il modo in cui Netbeans mi aiuta a eseguire il debug delle applicazioni Magento (in XAMPP su Win 7 a 64 bit), ma ho notato che la connessione sembra scadere dopo un periodo. I punti di interruzione non vengono più colpiti e devo riavviare la sessione di debug che è fastidiosa. Qualche suggerimento su come estendere o disabilitare il timeout di debug?Perché il timeout della sessione Netbeans Xdebug dopo il periodo di inattività

Non riesco a vedere nessuna opzione nella configurazione php.ini IDE o Xdebug. La documentazione Xdebug:

Quando l'URL variabile XDEBUG_SESSION_START = nome viene aggiunto a un URL, Xdebug emette un cookie con il nome "XDEBUG_SESSION" e come valore di il valore del parametro URL XDEBUG_SESSION_START . La scadenza del cookie è di un'ora. Il cookie è di un'ora.

ma non suggerisce come modificare il tempo di scadenza.

risposta

14

Trova php.ini e aggiungi la seguente riga alla sezione xdebug.

xdebug.remote_cookie_expire_time = 3600 

Il numero è il tempo in secondi per il cookie di rimanere attivi, che per default è 3600 (1 ora). L'ho impostato su 36000 (10 ore), che funziona bene e mi incoraggia a riavviare occasionalmente il processo per liberare memoria. È possibile impostarlo su 0 (illimitato) se lo si desidera, anche se ho trovato che causava blocchi occasionali qua e là.

Ricordatevi di riavviare Apache per il cambiamento a calciare in.

+0

grazie, ci provo! –

+0

funziona perfettamente, molto utile, grazie :) –

+0

/etc/php5/apache2/php.ini (percorso come suggerimento per gli utenti linux) – sbrbot

6

Questo è probabilmente correlato alla configurazione di Apache.

La causa probabile è un timeout configurato che definisce dopo quale periodo di tempo che il server termina il processo se non succede nulla ... ha un senso di solito, ma quando il debug si potrebbe essere solo occupato dare un'occhiata a qualcosa.

La mia configurazione è leggermente diversa dalla tua ma forse posso aiutarti.

Nella cartella apache/siti-disponibili sono situati i file che configurano gli host virtuali relativi al dominio. All'interno dei -tag del tuo dominio e il protocollo ho messo

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

che l'aumento nel mio caso il periodo a disposizione del tempo fino a quando il timeout verrebbe attivato da 40 a 120 secondi.

Quindi (ovviamente) riavviare l'apache.

Forse questo aiuta.

+0

Ho avuto lo stesso problema, come Jonathan, questo ha funzionato per me. Grazie! –

+0

Questo sembra essere correlato al tempo in cui il browser attende il server Web per rispondere, mentre la domanda riguarda la durata della sessione xdebug, 1 ora per impostazione predefinita. Ho riscontrato il problema con questo obiettivo di risposta, quindi farò un tentativo. –

+1

Sì! Grazie! Dopo mesi di trattative ho finalmente trovato la giusta combinazione di termini di ricerca per condurmi a questa risposta! Le versioni più recenti di apache/mod_fcgid usano la direttiva 'FcgidIOTimeout' invece di' IPCCommTimeout'. Ho impostato il mio a * 300 * per una sessione di debug di 5 minuti.Sono d'accordo che questa è una risposta a un problema diverso da quello dell'OP, ma è una risposta al mio problema, quindi sono felice. – Luke

Problemi correlati