Web App e Xojo 2018r4

Premetto che sto facendo i primi passi nella programmazione Web, per cui la mia esperienza minima.
Ho sviluppato con Xojo 2017r3 un paio di applicazioni Web CGI che, dopo parecchie tribolazioni, sono riuscito ad installare su un server Linux/Apache.
Oggi ho iniziato a scriverne un’altra con Xojo 2018r4, sempre CGI: appena abbozzata, ma l’ho comunque installata sul server, giusto per testarla.
Ebbene, questa non funziona. Mi d sempre l’errore 500 Internal Server Error. Il log del server segnala “End of script output before headers”.
La stessa applicazione, senza cambiare una virgola, ma compilata con Xojo 2017r3, funziona.
Qualcuno mi sa dare qualche dritta?
Grazie.
Nedi

Nessuno ha avuto lo stesso problema?

Ciao Nedi,
rientro in sede domani e faccio un test. Forse ho capito il problema di cui abbiamo gi parlato (e che probabilmente stai riscontrando ora)

Mi stato riferito che il problema nasce dal fatto che la versione 2018r4 richiede la presenza della libreria libunwind8.
Ho contattato l’assistenza del provider (Aruba/ Server Linux) e mi hanno confermato che l’applicazione richiede tale libreria, ma che non possibile installarla (a meno che non voglia valutare soluzioni dedicate o cloud).
Poich nono voglio restare fermo a Xojo 2017r3 per questo problema, vi chiedo:
a) anzich creare un’applicazione CGI, se ne creo una stand alone risolvo il problema? E come?
b) quali alternative ho? (considerate che me ne intendo molto poco di server web, applicazioni web e compagnia.

Grazie

Infatti era quello che riscontravo io, facendo le prove con la 18r4 (per questo ero meravigliato del tuo successo)
Da quello che ho capito non neanche possibile caricarla con un path “speciale” (cosa che ad esempio ho fatto per altri servizi su aruba dove non erano presenti le librerie richieste)

continuer ad indagare, ma purtroppo non credo in soluzioni: entrambi gli attori hanno interesse ad incassare piuttosto che fornire soluzioni.

Infatti hai ragione: ho aperto una richiesta di assistenza ad Aruba, spiegando il problema ed indicando che (forse) era la mancanza della libunwind8 il problema.
Dapprima mi hanno risposto che nel file .cgi c’era un’istruzione non consentita “($sock = create_socket($app_port);ricordiamo che il sito in un ambiente condiviso, pertanto non possibile creare socket.”
Quando ho fatto presente che la stessa istruzione era presente in applicazioni che funzionavano, si sono scusati, ed hanno confermato che il problema la libreria libunwind.so.8, ma “Tale libreria non presente nelle nostre soluzioni hosting e non pu essere installata. La invitiamo nel caso necessiti obbligatoriamente di tale libreria a valutare le nostre soluzioni dedicate o cloud.”

Ti chiedo, Antonio, se mi puoi dire come fare per far girare un’applicazione compilata Standalone anzich cgi (magari risolvo il problema).

Grazie mille!

la soluzione semplice (testata su aruba)
Metti le librerie libunwind.so.8 e libunwind-x86_64.so.8 (sono due che mancano in realt) nella cartella Libs della tua applicazione

Et voil tutto funziona

Siccome io utilizzo Xojo per Windows, dove posso trovare le due librerie che mi hai indicato che siano utilizzabili in Windows?

Per quanto riguarda le applicazioni Standalone mi sai dare qualche dritta?

In internet ho trovato “libunwind-1.2-2.el7.x86_64.rpm”. Devo aggiungerla nella Libs cos com’?

No devi aprirla e trovare i due file che ti ho indicato (sono piccoli da 51k e 67k)
Servono solo per una cgi linux.

Funziona alla grande e sono riuscito anche a far “digerire” un po’ di redirect per ottenere url userfriendly

Puoi anche caricarle su quello che hai gi caricato e fintanto non cambi versione di Xojo per aggiornare l’app puoi aggiornare solo il file principale e la cartella delle risorse.
O in alternativa fare un copyFile step per Linux dove includi le due librerie nel framework folder

Fatto. Per i due file che dici tu sono rispettivamente 18 byte e 25 byte.

Ti ho scritto in privato su come fare.

Grazie mille!!