consiglionazionaledellericerche / epas

ePAS - Electronic Personnel Attendance System
GNU Affero General Public License v3.0
18 stars 7 forks source link

epas: modifica della root path #13

Closed lucanatalegov closed 1 year ago

lucanatalegov commented 1 year ago

Buongiono dopo la modifica del root path ( per esempio /epas ) dopo la pagina di login la redirect è fatta senza la root path Dopo la login devo modificare l'url e aggiungere

/epas/stampings/stampings?month=5&year=2023

per visualizzare la prima pagina.

Grazie

criluc commented 1 year ago

Buongiorno, hai modificato il parametro del docker-compose.yml "HTTP_PATH"? E' questo il parametro che controlla la costruzione del path generato dell'applicazione. Se il parametro è stato impostato correttamente all'avvio del container nei log dovresti trovare qualcosa del genere

Attaching to epas epas | ePas Protocol set to http epas | Backup del database non attivo. epas | HTTP_PATH presente: /epas

Se non è presente il log "epas | HTTP_PATH presente: /epas" vuol dire che il parametro HTTP_PATH non è correttamente impostato a /epas.

Dalle prove che abbiamo fatto, con il parametro HTTP_PATH impostato, non siamo riusciti a riprodurre il problema da te riportato.

lucanatalegov commented 1 year ago

I parametri sono

protocol=https http_path=/epas

nel file di log nonostante io abbia messo il log_level ad ALL e Appenders= file

nel file non è presente la stringa

epas | HTTP_PATH

La versione di epas attiva è la 2.6.5

Grazie

criluc commented 1 year ago

Il log epas | HTTP_PATH presente: /epas viene inviato sullo standard output, può darsi non sia presente nel file di log, dovresti poterlo trovare con un comando tipo questo:

$ docker-compose logs --tail=1000 | grep HTTP_PATH

che dovrebbe avere un output tipo questo:

epas | HTTP_PATH presente: /epas

Magari verifica anche tramite il comando :

docker-compose config | grep HTTP_PATH

che l'impostazione tramite docker-compose.yml ed eventuale .env sia avvenuta correttamente, in questo caso l'output del comando precedente dovrebbe essere:

HTTP_PATH: /epas

lucanatalegov commented 1 year ago

Noi abbiamo installo epas in uno stack docker questo è il log del servizio

opadmin@docker001:/app/mit4me$ docker service logs epas_epasd epas_epasd.1.mzw4sf8q822p@docker004 | ePas Protocol set to https epas_epasd.1.mzw4sf8q822p@docker004 | Backup del database non attivo. epas_epasd.1.mzw4sf8q822p@docker004 | HTTP_PATH presente: /epas epas_epasd.1.mzw4sf8q822p@docker004 | Evoluzioni disabilitate dalla configurazione: EVOLUTIONS_ENABLED=false epas_epasd.1.mzw4sf8q822p@docker004 | Avvio ePas... epas_epasd.1.mzw4sf8q822p@docker004 | :: loading settings :: url = jar:file:/opt/play/play-1.5.3/framework/lib/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml epas_epasd.1.mzw4sf8q822p@docker004 | WARNING: An illegal reflective access operation has occurred epas_epasd.1.mzw4sf8q822p@docker004 | WARNING: Illegal reflective access by org.codehaus.groovy.vmplugin.v7.Java7$1 (file:/opt/play/play-1.5.3/framework/lib/groovy-2.5.3.jar) to constructor java.lang.invoke.MethodHandles$Lookup(java.lang.Class,int) epas_epasd.1.mzw4sf8q822p@docker004 | WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.vmplugin.v7.Java7$1 epas_epasd.1.mzw4sf8q822p@docker004 | WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations epas_epasd.1.mzw4sf8q822p@docker004 | WARNING: All illegal access operations will be denied in a future release

criluc commented 1 year ago

Direi che il parametro HTTP_PATH è configurato correttamente, non ci sono altre configurazioni da fare sul servizio ePAS.

Forse qualche configurazione del proxy? In particolare se l'indirizzo chiamato dal browser sul proxy è per /epas/stampings allora il proxy deve passare proprio il path /epas/stampings al servizio ePAS ed il servizio generarà le url di conseguenza cominciando con il path /epas, potete verificare magari dai log del proxy che sia così?

Il problema è solo dopo la login? Quale tipo di login state utilizzando (locale, ldap, etc)? Gli altri link generati dall'applicazione sono corretti?

Noi abbiamo installo epas in uno stack docker questo è il log del servizio

opadmin@docker001:/app/mit4me$ docker service logs epas_epasd epas_epasd.1.mzw4sf8q822p@docker004 | ePas Protocol set to https epas_epasd.1.mzw4sf8q822p@docker004 | Backup del database non attivo. epas_epasd.1.mzw4sf8q822p@docker004 | HTTP_PATH presente: /epas epas_epasd.1.mzw4sf8q822p@docker004 | Evoluzioni disabilitate dalla configurazione: EVOLUTIONS_ENABLED=false epas_epasd.1.mzw4sf8q822p@docker004 |

lucanatalegov commented 1 year ago

Ho eseguito altri test e nel caso di login locale funziona tutto regolarmente dopo la post di login è inviato al client la pagina /epas

mentre nel caso di autenticazione con ldap dopo la post di autenticate al client non è inviato la /epas ma la /.

Grazie epas_ldap epas_locale

criluc commented 1 year ago

Ho eseguito altri test e nel caso di login locale funziona tutto regolarmente dopo la post di login è inviato al client la pagina /epas

mentre nel caso di autenticazione con ldap dopo la post di autenticate al client non è inviato la /epas ma la /.

Grazie epas_ldap epas_locale

ok, con queste info aggiuntive ho individuato il problema. Abbiamo corretto il problema, la correzione a partire dalla versione 2.6.7 che dovrebbe essere pubblicata a giorni.

lucanatalegov commented 1 year ago

Noi abbiamo installato la versione 2.6.5 possimo fare il passagio diretto alla 2.6.7 o dobbiamo fare prima il passagio alla 2.6.6? Grazie

criluc commented 1 year ago

E' disponibile la versione 2.6.7 che dovrebbe risolvere il problema riportato in questa segnalazione. Potete passare direttamente dalla 2.6.5 alla 2.6.7.