Я пытаюсь выполнить скрипт Python с веб-страницы php.Скрипт python использует модуль netsnmp, который зарегистрировал следующую ошибку в httpd error_log:
Traceback (most recent call last):
File "/var/www/html/backendscripts/updateMachine.py", line 5, in
import netsnmp
.
.
.
The following error occurred while trying to extract file(s) to the Python egg
cache:
[Errno 13] Permission denied: '**/var/www/.python-eggs/netsnmp_python-1.0a1-py2.5-linux-i686.egg-tmp'**
The Python egg cache directory is currently set to:
/var/www/.python-eggs
Perhaps your account does not have write access to this directory? You can
change the cache directory by setting the PYTHON_EGG_CACHE environment
variable to point to an accessible directory.
Кэш Python egg находится в каталоге /root/.python-eggs/
.Я также создал программную ссылку в каталоге /var/www/
, указывающую на каталог кэша яиц с полными разрешениями для всех пользователей.
/ var / www / .python-eggs -> /root/.python-eggs
[root@localhost .python-eggs]# pwd
/var/www/.python-eggs
[root@localhost .python-eggs]# ls -lR .
.:
total 4
drwxrwxrwx 3 root root 4096 2011-10-07 02:17 netsnmp_python-1.0a1-py2.5-linux-i686.egg-tmp
./netsnmp_python-1.0a1-py2.5-linux-i686.egg-tmp:
total 4
drwxrwxrwx 2 root root 4096 2010-06-09 22:21 netsnmp
./netsnmp_python-1.0a1-py2.5-linux-i686.egg-tmp/netsnmp:
total 84
-rwxrwxrwx 1 root root 81349 2010-06-09 22:20 client_intf.so
Я даже установил переменную окружения PYTHON_EGG_CACHE
в скрипте python как:
import os
os.environ['PYTHON_EGG_CACHE'] = '/var/www/.python-eggs/'**
, но скрипт все равно не выполняется.