italia / pa-website-validator

Tool di validazione per i siti di comuni e scuole
BSD 3-Clause "New" or "Revised" License
33 stars 15 forks source link

Criteri di conformità spesso danno errore "Error: Execution context was destroyed, most likely because of a navigation" #432

Open AlessioPellegrini opened 10 months ago

AlessioPellegrini commented 10 months ago

Con l'ultima versione dell' app ho spesso errore sui criteri di conformità, gli altri test sono tutti al 100% o vicino al 100%, ma i criteri di conformità riportano molto spesso un punto interrogativo.

Ad esempio ho provato a controllare il sito di un liceo che, su la versione online dall'app, ha quasi il massimo su tutto. Se uso l'app in locale ( ultima versione) il risultato è che i criteri di conformità hanno un punto interrogativo e nello specifico il test fallisce con un errore sulla validazione dei cookie.

Allego cosa appare nel log:

  LH:status Auditing: C.SC.2.3 - COOKIE - Il sito della scuola deve presentare cookie tecnici in linea con la normativa vigente. +0ms
ERROR https://www.liceopolivalentequintiliano.edu.it/luogo/plesso-di-via-tisia/laboratorio-informatica-2/: Error: Execution context was destroyed, most likely because of a navigation.
  LH:school-legislation-cookie-domain-check:warn Caught exception: Il test è stato interrotto perché nella prima pagina analizzata https://www.liceopolivalentequintiliano.edu.it/luogo/plesso-di-via-tisia/laboratorio-informatica-2/ si è verificato l'errore "Error: Execution context was destroyed, most likely because of a navigation.". Verificarne la causa e rifare il test.
 +28s

Stessa cosa succede sul sito che sto sviluppando, oggi ho fatto il test e ha dato quasi il massimo su tutto, subito dopo l'ho ripetuto e i criteri di conformità davano errore. Riavviando il modem/router, con conseguente cambio di ip, il test ha ridato quasi il massimo su tutto, criteri compresi.

Forse il test sui criteri di conformità è un po' "aggressivo" e viene bloccato dal firewall?

luigibugliani commented 10 months ago

Confermo. Ho lo stesso problema con tutti i siti che ho sottoposto a controllo. Le segnalazioni sono random, a volte su una pagina,a volte su un altra. Questo con la versione Windows del validatore, mentre sulla versione per Mac questo non accade.

AlessioPellegrini commented 10 months ago

Ho provato la versione linux, mi sembra che vada meglio di quella windows, ma alla fine il test non è affidabile nemmeno nella versione linux. Magari da il 100% su tutto più volte di seguito, ma poi senza che il sito sia stato minimamente toccato, da errore ed i criteri di conformità non sono più rilevabili. Gli altri test continuano a funzionare, il problema lo riscontro solo sui criteri di conformità.

luigibugliani commented 10 months ago

Mi devo ricredere, ho ricevuto qualche segnalazione anche con la versione per Mac.

tensor5 commented 9 months ago

Il problema Execution context was destroyed non dipende dall'ultima versione dell'app, né dall'architettura; è un messaggio che viene restituito dalla libreria puppeteer che usiamo per navigare tra le pagine del sito. Stiamo provando una possibile soluzione, ma ci vorrà del tempo.

AlessioPellegrini commented 9 months ago

Grazie per la risposta, da quello che vedo l'app online che era al seguente indirizzo ( https://agid.webapplication.me/ ) non ha quel problema. Ne avete una versione installabile su un server Linux? Magari da integrare in una pagina web?

tensor5 commented 9 months ago

L'app online di cui hai condiviso il link non è sviluppata né da AgID né da noi. Purtroppo non abbiamo una web app. Ci abbiamo pensato, ma se mai ci sarà i tempi sono lunghi...

AlessioPellegrini commented 9 months ago

Volevo segnalare che se riavvio il router, con conseguente cambio di ip, l'app ricomincia ad andare per un po'. Dopo altre scansioni riappaiono errori e risultati inaffidabili. Il firewall del server che ospita il sito però non mi blocca, da browser riesco a navigare tranquillamente, per cui l'ip non è bloccato dal server, ma stranamente l'app da un nuovo IP ricomincia a funzionare.

AlessioPellegrini commented 8 months ago

Alla fine, dopo tantissimi tests, credo di aver capito che l'errore "Error: Execution context was destroyed, most likely because of a navigation" viene fuori con litespeed attivato ed in particolare se imposto il caricamento dei javascript come "Dealyed". Se disabilito questa impostazione l'errore non si presenta, ma il sito diventa notevolmente più lento.

Petrillo96 commented 7 months ago

Alla fine, dopo tantissimi tests, credo di aver capito che l'errore "Error: Execution context was destroyed, most likely because of a navigation" viene fuori con litespeed attivato ed in particolare se imposto il caricamento dei javascript come "Dealyed". Se disabilito questa impostazione l'errore non si presenta, ma il sito diventa notevolmente più lento.

Ciao, hai trovato qualche soluzione in merito alla combo con litespeed?

AlessioPellegrini commented 7 months ago

Sono riuscito ad ottenere risultati stabili, ma ho dovuto disabilitare alcune opzioni: adesso il test della velocità è sopra il 64% . Peccato che impostando per bene litespeed il sito sarebbe molto più veloce, con risultati intorno al 98%, ma poi in maniera casuale senza nessun criterio l'app va in tilt e da l'errore in oggetto.

Ho fatto una miriade di prove per cui non sono in grado di dirti passo per passo come impostare litespeed, ma ricordo che ho resettato il modulo, caricato il basic preset, guest mode on e guest optimizations rigorosamente off. In questo modo dovresti passare il test ( risultati ampiamente sopra il 50%) sfruttando in parte le potenzialità di litespeed. Ricordo che poi ho smanettato e fatto altre prove per aumentare la velocità, ma se provi a seguire i passi che ti ho detto dovresti avere già una buona base di partenza per passare il test in maniera più stabile.

Petrillo96 commented 7 months ago

Sono riuscito ad ottenere risultati stabili, ma ho dovuto disabilitare alcune opzioni: adesso il test della velocità è sopra il 64% . Peccato che impostando per bene litespeed il sito sarebbe molto più veloce, con risultati intorno al 98%, ma poi in maniera casuale senza nessun criterio l'app va in tilt e da l'errore in oggetto.

Ho fatto una miriade di prove per cui non sono in grado di dirti passo per passo come impostare litespeed, ma ricordo che ho resettato il modulo, caricato il basic preset, guest mode on e guest optimizations rigorosamente off. In questo modo dovresti passare il test ( risultati ampiamente sopra il 50%) sfruttando in parte le potenzialità di litespeed. Ricordo che poi ho smanettato e fatto altre prove per aumentare la velocità, ma se provi a seguire i passi che ti ho detto dovresti avere già una buona base di partenza per passare il test in maniera più stabile.

Grazie mille. Potresti esportare la configurazione e condividerla?