Compilazione webapp su Xampp

Ciao a tutti,
Posso chiedere qualche indicazione per: compilare una webapp e gestirla in locale con webserver apache mysql
Trovo delle difficolt nellorientarmi con la struttura dei files xojo e non campisco come trasferire il progetto nella cartella httpd del server locale per poi accedere alleseguibile mediante localhost…
Se potete darmi delle indicazioni per guidarmi ve ne sarei molto grato.
Ci sono dei settaggi da fare nei file di configurazione xampp, e non per ultimo come si compila e si esegue una web app cgi?
Grazie Ema

Per compilare le webapp come cgi nella sezione build setting del navigatore (a sinistra nell’IDE) devi mettere la spunta sul sistema operativo (linux), selezionare la voce shared e nell’inspector (a destra nell’IDE) assicurarti che la voce Deployment Type sia su CGI

Dopo aver compilato l’applicazione copia la cartella creata nella cartella CGI del tuo server.
La cartella copiata sul server deve avere i permessi di scrittura (all’avvia vengono scritte alcune impostazioni)

A livello di impostazioni del server devi avere attivato le cgi.

Andando sul sito all’indirizzo cgi-bin//.cgi la tua applicazione si avvier (o se gi attiva creer una nuova sessione)

possono essere necessarie delle impostazioni particolari nell’htaccess e nella configurazione di apache (dipende dalla versione e tipo di impostazioni previste nella tua installazione) per questo ti consiglio controllare l’uso delle cgi.

Il file cgi viene generato automaticamente da Xojo e in genere funziona cos come , almeno per i server completamente gestititi da te. Potresti avere problemi per alcuni componenti mancanti sul server (dipende dalla versione) per questo con il terminale sul server ti consiglio di fare un LDD sull’applicazione (quella vera non il cgi) che ti mostrer tutte le dipendenze richieste e se vengono mappate, nel caso scarica le parti mancanti.

Se non vuoi avere l’indirizzo complesso (cgi-bin/…) puoi creare una regola di redirect per semplificare l’indirizzo, ma dopo devi editare il file cgi per comprendere le cose che ricevi (alcuni parametri vengono rinominati), ma anche questo purtroppo dipende dalla versione che stai utilizzando (non un problema di Xojo ma della totale frammentazione delle impostazioni)

A livello di server locale e/o gestito funziona bene senza grossi problemi, se usi un server gestito da altri puoi avere problemi di librerie non gestibili.

Grazie Antonio… Ora mi chiaro il principio delle cgi. Probabilmente mi mancano ancora dei concetti sulle configurazioni e sugli lo accessi da server locale:
Ho seguito le tue indicazioni fino alla compilazione scegliendo per server windows. Il file httpd.conf era gi abilitato allesecuzione dellapplicazione cgi sulla cartella c:\xampp\cgi-bin.
Ho compilato e copiato la cartella dentro xampp\cgi-bin\ e ho poi cercato di eseguire lapp mediante chrome allindirizzo: cgi-bin/Ema2/ema2.cgi per il risultato del browser stato impossibile raggiungere il sito ERR_NAME_NOT_RESOLVED
Non riesco proprio eseguire il cgi, mentre lesecuzione da debug OK… Qualcuno mi pu aiutare?
Ciao

Prima ancora di provare ad eseguire l’app Xojo, dovresti provare a raggiungere il “sito” ovvero la home.
Il server avviato?
Hai provato l’indirizzo locale sulla macchina o hai provato a raggiungerlo da un’altra macchina?
name not resolved mi fa pensare a problemi di accesso all’indirizzo che appunto non viene risolto e quindi il browser non sa dove collegarsi.

Ho fatto più tentativi e ancora NO!
Premetto che ho delle debolezze concettuali su:
-ingranaggi necessari all’esecuzione dello script cgi che si appoggia a xojo;
-corretta configurazione di Apache per fare da tramite con browser e xojo
-gestione del path della build.
Detto questo: sono riuscito a risolvere l’accesso al server con script cgi pearl mediante indirizzo: localhost//cgi-bin/cgi.cgi però quando vado ad inserire l’indirizzo della build copiato ed incollato nella cartella c:\xampp\cgi-bin\ (esempio = localhost/cgi-bin/GPadvance/gpadvance.cgi) il browser restituisce l’errore 404
Non capisco cosa causa l’errore poiché l’esecuzione in debug mod 170.0.0.1:8080 carica correttamente la web form.
Ti prego Antonio non mollarmi perché sono determinato a sviluppare le mie webapp con questo ide che trovo molto stimolante rispetto a PHP che mi fece desistere 3 anni fa orientandomi verso VB con visual studio molto più userfriendly.
Grazie ancora

404 file not found per cui chiaro che non stai chiamando la pagina corretta.
Se fosse 500 potrebbe essere un errore di configurazione, ma 404 vuol dire pagina non trovata.

In debug la tua app funziona come server per cui non hai bisogno di apache e tutto il resto. Potresti anche compilare la tua app come eseguibile e lanciarlo direttamente sulla macchina, non necessario farlo passare per la chiamata in CGI (e non detto che in futuro questa opzione possa esistere ancora)

In ogni caso nella copia dei file, tutti i file della cartella generata (e la cartella stessa) vanno nella cartella cgi-bin
per la configurazione di apache, se hai eseguito una cgi perl non dovresti impostare altro
per la gestione dei path, rendi i tuoi path nell’app relativi all’applicazione stessa (la cartella risorse utile per queste cose)

Grazie Antonio,
ho risolto. Il file .cgi creato da xojo riportava un percorso Perl errato
la prima istruzione del file ema2.cgi creato da xojo riportava: #!c:\perl\bin\perl.exe
ho modificato con #!c:\xampp\perl\bin\perl.exe salvato ed eseguito con successo all’indirizzo:"http://localhost/cgi-bin/Ema2/ema2.cgi
per non andare fuori tema chiudo la discussione qui per quanto mi riguarda reindirizzando un 'ulteriore domanda chiaritrice sui principi di funzionamento su questa discussione " " che credo più inerente alla mia domanda
ciao e grazie ancora