Kør Python script fra PHP

Tags:    php python

Jeg er ved at tabe håret over det her problem

Jeg skal køre en python fil fra min webserver. Den virker fint i terminal, men når jeg skal køre den i PHP får jeg følgende fejl:

Array ( [0] => sh: sysctl: command not found [1] => Traceback (most recent call last): [2] => File "../server/search.py", line 5, in [3] => from pyimagesearch.colordescriptor import ColorDescriptor [4] => File "/Applications/MAMP/htdocs/toys/server/pyimagesearch/colordescriptor.py", line 3, in [5] => import cv2 [6] => File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cv2/__init__.py", line 6, in [7] => os.environ["PATH"] += os.pathsep + os.path.dirname(os.path.realpath(__file__)) [8] => File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserDict.py", line 40, in __getitem__ [9] => raise KeyError(key) [10] => KeyError: 'PATH' ) 1

Min PHP kode:

Fold kodeboks ind/udPHP kode 


Python kode:

Fold kodeboks ind/udPython kode 




2 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Hej Guides

Virker det også, hvis du på webserveren logger ind som brugeren www-data (eller hvilken bruger din webserver nu end benytter) og forsøger og køre python scriptet?

Jeg ville søge videre på første fejl du modtager ("sysctl: command not found") ud fra det perspektiv, at du skal rette fejlen for www-data-brugeren.




'/sbin' skal være i www-data brugerens PATH environment variable. Du kan nok fixe det ved at sætte følgende i PHP koden inden dit kald til Python:
Fold kodeboks ind/udKode 




t