PHP exec python non funziona

Ciao a tutti. Sto eseguendo python su un server web da dreamhost. Sto usando la loro installazione di python e sto usando un module lastfm che può essere trovato qui: http://code.google.com/p/python-lastfm/

per farlo importre correttamente lo faccio

import sys sys.path.append("/home/myusername/build/Python-2.5/Lib/site-packages/") import lastfm 

dal momento che il module lastfm è installato lì.

Quando uso stucco in ssh nel mio server, posso semplicemente eseguire python test.py e funziona perfettamente. Ma quando lo eseguo da uno script php con

 exec("python test.py"); 

non funziona e lo script non funziona. funziona perfettamente bene quando lo faccio

 import lastfm 

e poi avere altre cose dopo, ma quando effettivamente provo a fare qualcosa con il module come:

 import lastfm api=lastfm.Api(api_key) 

non funziona ancora una volta posso eseguire lo script usando la stessa installazione python in una shell e viene eseguito correttamente. Quindi deve succedere qualcosa che va storto quando lo eseguo dallo script php. Ho pensato che avrebbe eseguito esattamente lo stesso pitone e tutto il resto. Ho controllato altri post e dicono che potrebbe essere qualcosa con i permessi dei file, ma i miei file sono 777 e non funziona ancora. idk quale potrebbe essere il problema. grazie in anticipo a tutti

Prova a utilizzare il path completo dell'eseguibile python. Per esempio:

exec ("/ usr / bin / python test.py")

Puoi trovare il path completo dalla row di command usando il command which:

$ quale python / usr / bin / python

Qualunque sia l'errore che python sta generando sarebbe destinato allo stderr del bambino. Prova a dire a php di leggere da stderr, o (in python) fai questo:

 import sys sys.stderr = sys.stdout 

Per utenti Windows:

 $output = null; exec('C:\\Python27\\python.exe C:\\sud.py', $output); echo var_export($output, TRUE); 

Il codice che stavo cercando tutto il giorno ^^
Ecco perché – spero che aiuti qualcuno.

Per utenti Windows – Grazie a Karlisup il mio file PHP potrebbe leggere python. Sto usando BITNAMI WAMP in EC2 Amazon, il mio file python (leadatos.py) e il file php sono nella cartella htdocs.

La mia chiamata era

 <?php passthru('C:\\Python27\\python.exe leadatos.py'); ?>