Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    165

    comando system: esecuzione bat su c:\

    è possibile far esegure il file comando.bat che ho creato e messo nella cartella c:\ da server linux con la funzione system?

    molto ingenuamente ho scritto questo

    <?php
    system ("c:\comando.bat");
    ?>

    ma non funziona .... mi date due dritte?

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    scusa, se sei su linux, il comando.bat sarà su un altro computer?

    Se si non puoi chiamarlo direttamente.

    Se anche sul computer con windows è installato il php puoi creare una pagina "ponte" su quel pc che chiama il comando bat, e tramite linux farai una chiamata alla pagina.php sul pc che eseguirà il comando.

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    165
    scusa ma non ho capito ... mi sto confondendo:

    io ho sul server (linux) un file di nome system.php che quando lo chiamo da browser vorrei eseguisse il file camando.bat che è sul mio pc (windows) in posizione c:

    mi rispieghi il da fare?

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    il punto è che il comando.bat non risiede sul server linux, e ovviamente non è possibile lanciare un comando eseguibile su un computer semplicemente da un altro, immaginati le implicazioni di sicurezza in uno scenario del genere.

    A questo punto l'unica soluzione è mettere anche sul pc windows un web server con configurato php.

    In una pagina php che metterai sul web server windows metterai la system con la chiamata al comando bat, che in questo caso risiederà sullo stesso pc da cui è lanciata la pagina.

    Poi sul server linux nella pagina php alla quale vuoi far eseguire il comando metterai una chiamata all'url del tuo pc puntando alla pagina php che esegue il comando.

    Poniamo il caso che installi apache su windows e che il pc con windows abbia
    ip : 192.168.0.10,
    mentre il server linux abbia ip : 192.168.0.5

    Nella document_root del server windows metti una pagina php chiamata system.php, dentro questa pagina metterai

    codice:
    <?php 
    system('C:/comando.bat');
    ?>
    Sul server linux una pagina php chiamata "esegui_richiesta.php" che chiama la pagina php sul server windows
    codice:
    <?php
    fopen('http://192.168.0.10/system.php');
    ?>
    Quando nel browser chiamerai l'indirizzo http://192.168.0.5/esegui_richiesta.php verrà eseguito il comando.

    In pratica
    codice:
    [Browser] - chiama una pagina php sul server linux-
        |
        |
    [Server Linux] -chiama una pagina sul server windows-
        |
        |
    [Server Windows] -richiama il comando in C:\ -

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.