Questo forum utilizza i cookies
Questo forum fa uso di cookie per migliorare l'esperienza utente. I cookie sono piccoli file di testo memorizzati sul tuo browser. I cookie impostati dal forum possono essere utilizzati solo su questo sito e non costituiscono rischio per la sicurezza, vengono utilizzati unicamente per memorizzare le tue preferenze. Navigando sul sito accetti che RaspberryItaly installi i cookie sul tuo browser.
Per maggiori informazioni consulta l'informativa sui Cookie di RasberryItaly

Un cookie verra memorizzato nel browser indipendentemente dalla scelta per evitare che questa domanda ti venga posta di nuovo. Sarai in grado di modificare le impostazioni dei cookie in qualsiasi momento utilizzando il link nel footer.
  • Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
un lighttp di evento dopo bloccato cancellazione o inserimento

lighttp bloccato dopo inserimento o cancellazione di un evento
#1
Ciao a tutti,
prima di tutto volevo fare i complimenti al progetto! Veramente utile!

Credo di aver installato tutto correttamente.

ho inserito 2 moduli ed ho provato ad aggiungere degli eventi di programmazione.
Una volta inserito un evento (che va a buon fine) se provo a fare qualcos'altro il web server non risponde più.

Ho trovato nei log del web server questo:

2015-08-17 16:37:45: (mod_fastcgi.c.2543) unexpected end-of-file (perhaps the fastcgi process died): pid: 3819 socket: unix:/var/run/lighttpd/php.socket-0
2015-08-17 16:37:45: (mod_fastcgi.c.3286) child signaled: 12


Devo necessariamente fare il restart del webserver per sbloccarlo

Qualche suggerimento?
ciao
Risposta
#2
Ciao, dovresti tirare fuori il log di PHP per maggiori info.


Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
Risposta
#3
ciao,
ma i log dell'interprete non vengono girati al web server?

nel syslog comunque ho trovato questo ma non so se si riferisce al problema che capita:


Aug 17 21:37:26 rpidev ntpd[2244]: Listen normally on 2 eth0 192.168.1.20 UDP 123
Aug 17 21:37:26 rpidev ntpd[2244]: peers refreshed
Aug 17 21:37:26 rpidev dhcpcd[1953]: forked to background, child pid 2388
Aug 17 21:39:01 rpidev /USR/SBIN/CRON[2420]: (root) CMD ( [ -x /usr/lib/php5/maxlifetime ] && [ -x /usr/lib/php5/sessionclean ] && [ -d /var/lib/php5 ] &&
/usr/lib/php5/sessionclean /var/lib/php5 $(/usr/lib/php5/maxlifetime))
Risposta
#4
No, siccome USA php-fpm non vengono girati. Abilità error reporting nel file php.ini che si trova nel percorso /etc/php-fpm/ php.ini (non è il percorso preciso esatto ma si trova facilmente)

Se non riesci poi mi dici ti do il percorso esatto Wink


Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
Risposta
#5
Non mi sembra usi php-fpm ma php-cgi, sono la stessa cosa?

Codice:
1 installare i pacchetti richiesti

# apt-get install lighttpd php5-common php5-cgi php5 php-pear php5-sqlite rpi.gpio sqlite3

2. abilitare php su lighttp:

# lighttpd-enable-mod fastcgi
# lighttpd-enable-mod fastcgi-php


Comunque ho trovato 2 file php.ini:
/etc/php5/cli/php.ini
/etc/php5/cgi/php.ini

ho abilitato in entrambi la riga 'error_log'
Codice:
; Log errors to specified file. PHP's default behavior is to leave this value
; empty.
; http://php.net/error-log
; Example:
error_log = php_errors.log
; Log errors to syslog (Event Log on Windows).
;error_log = syslog

ho riavviato il web server ma il file di errore non mi viene generato.

Aggiungo un'altro elemento.
Ho notato che monitorando i processi con top, pigpiod è eseguito con utente root, è corretto?
Codice:
2281 root      rt   0  6916 1576 1404 S  11,3  0,3  85:50.88 pigpiod

aggiungo un nuovo elemento, nel log del web server ho visto questo messaggio:
Codice:
connect failed: No such file or directory on unix:/var/run/lighttpd/php.socket-0


sono andato a vedere nella cartella /var/run/lighttpd e il file è di 0 byte
Codice:
srwxr-xr-x  1 www-data www-data   0 ago 18 10:23 php.socket-0
Risposta
#6
in rete ho trovato un post che parla dello stesso problema
https://bugs.php.net/bug.php?id=61557

"I've also experienced this problem after switching to 5.4. Looked into it, and here's what I was able to find :

This only happens to CGI/FPM. The first time I trigger a request it works, the second time it crashes. Explains why it appears to work sometimes and others not : it works only once per process. Then it segfaults, a new one is started, repeat."



la mia versione di php:
Codice:
php-cgi -v

PHP 5.4.41-0+deb7u1 (cgi-fcgi) (built: Jun  7 2015 23:53:22)
Copyright © 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright © 1998-2014 Zend Technologies

voi avete la stessa versione?
Risposta
#7
Allora 1 cosa alla volta Smile
- Hai ragione e PHP-cgi
- non va modificato error_log ma error_reporting
- pigpio deve essere eseguito da root se no non potrebbe scrivere su GPIO

Rimetti i file ini a posto e cambia il parametro giusto Smile



Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
Risposta
#8
Gli errori erano già abilitati su error_reporting ad esclusione di warnings e deprecati ora ho lasciato solo:
error_reporting = E_ALL

Ma sul log non vedo comunque nulla.
Dopo il primo inserimento o cancellazione di un programma di irrigazione, al click successivo il web server rimane appeso in attesa di risposta.

Sembra un problema di php-cgi.
Nella cartella /var/run/lighttpd i socket creati ahnno sempre grandezza 0 byte.

i permessi della cartella lighttpd sono:
drwxr-x---  2 www-data   www-data     80 ago 19 11:39 lighttpd

mentre i socket:
srwxr-xr-x  1 www-data www-data   0 ago 19 11:39 php.socket-0
srwxr-xr-x  1 www-data www-data   0 ago 19 11:39 php.socket-1
Risposta
#9
Non saprei esattamente, io ero riuscito ad abilitare i log ma veramente non ricordo come ma l'avevo trovato su Google


Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
Risposta
#10
Aggiungo un altro elemento.

Se imposto l'irrigazione manuale e salvo, ricevo a video l'errore 500 e sul log i seguenti errori:
Codice:
2015-08-21 09:54:06: (mod_fastcgi.c.2543) unexpected end-of-file (perhaps the fastcgi process died): pid: 2249 socket: unix:/var/run/lighttpd/php.socket-1
2015-08-21 09:54:06: (mod_fastcgi.c.3286) child signaled: 12
2015-08-21 09:54:06: (mod_fastcgi.c.3329) response not received, request sent: 1138 on socket: unix:/var/run/lighttpd/php.socket-1 for /module.php?id=2, closing connection

mi dite che versione di php avete per vedere se il bug di php 5.4 e fast-cgi possa entrarci qualcosa?
Risposta
  


Vai al forum:


Navigazione:
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect