Exec non funziona su server

di il
10 risposte

Exec non funziona su server

Ho script uno script che ha sempre funzionato su vecchia versione di apache (2019) stesso anno anhce php, questi installati da xampp.
Da un paio di settimane ho installato la nuova versione di xampp (ovviamente lui ha installa apache e php), ma purtroppo lo script si blocca durante la chiamata a exec.
Ho provato lo script in console tramite comando “php mioscript.php” e tutto funziona regolarmente.

Dove sono i problemi di permessi ? ho provato a dare i diritti di amministratore ad apache (al file http.exe) ma nulla, lo script si blocca durante la exec("mioprogramma.exe") .

10 Risposte

  • Re: Exec non funziona su server

    Si blocca con quale errore preciso?

    E comunque controlla esattamente in quale cartella sta il tuo programma e se effettivamente viene cercato nella cartella giusta

  • Re: Exec non funziona su server

    Senza errori si blocca e basta, per far continuare lo script devo terminare il programma chiamato dalla exec  (dal task manager)


    Deve essere una questione di permessi, anche per il server apache, perchè “da console lo script funziona”, soprattutto funzionava con l'installazione precedente di xampp (installa tutto apche e php)

  • Re: Exec non funziona su server

    Ripeto, in quale cartella sta l'eseguibile? 

    Non indicando nessun percorso (da console è diverso) potresti non accedere alla cartella giusta.

    Indica il percorso assoluto nella exec

  • Re: Exec non funziona su server

    Ti ho specificato che è visibile nel task manager, il programma viene avviato, ed inserisco tutto il percorso, ha sempre funzionato.

  • Re: Exec non funziona su server

    Nella linea

    exec("mioprogramma.exe") 

    non è indicato alcun percorso per l'eseguibile, almeno questo si capisce.

    Se hai un percorso di default nell'environment valido per la versione precedente non è detto che lo sia anche dopo l'aggiornamento e quindi è necessario capire in quale cartella cerchi effettivamente l'exe

  • Re: Exec non funziona su server

    Ho anche provato un programma che non esiste, mi restituisce questo errore:

    "errrrrr.exe" non Š riconosciuto come comando interno o esterno,
    un programma eseguibile o un file batch.

    Questo non mi blocca lo script, semplicemente non funziona, il problema è solo con i programmi windows che hanno sempre funzionato con versioni precedenti di apache e php ( ricordo che da php in console funziona benissimo)

    Non c'entra nulla il percorso perchè il programma viene trovato

  • Re: Exec non funziona su server

    Esegui

        exec('tuofile.exe 2>&1', $output);
        print_r($output);

    e dicci cosa viene visualizzato

  • Re: Exec non funziona su server

    Si blocca lo script, devo terminare  “tuofile.exe”  da task manager

    nello script mando a video con

    var_dump( $output);

    visualizza: 

    array(0) { }

  • Re: Exec non funziona su server

    I comandi per console funzionano tipo  exec("cd") restituisce la dir bene, funziona benissimo, il problema sono i programmi windows, che hanno sempre funzionato in vecchie versioni.

  • Re: Exec non funziona su server

    Ho capito dopo ore di ricerca, come dicevo era un problema di permessi…

    Il problema è far partire apache come servizio su windows, con la configurazione xampp crea il problema descritto, prima non succedeva.

    Ringrazio per l'attenzione, spero sia utile anche ad altri.

Devi accedere o registrarti per scrivere nel forum
10 risposte