Я пытаюсь запустить скрипт Python на общем веб-сервере.
он работает нормально в SSH, как:
. / .. / python / bin / python cgi-bin / script.py
Однако, когда я хочу запустить его через PHP, скрипт python запускается до тех пор, пока он не импортирует пакеты pip.
ошибка возникает при импорте установленных пакетов pip.
Я пытался дурачиться с разрешениями, установил все файлы и каталоги на 755 и chmod x
и я попытался вручную и заново установить python 2.7 (веб-сервер запускает python 2.6 по умолчанию, поэтому вызов python "./../python/bin/python", я не смог установить 3.5, у меня много ошибок и тайм-аут.)
У меня нет прав sudo.
script.py
print "I will be displayed! yay it works\n"
# import the necessary packages
import numpy as np
import argparse
import cv2
import os
print "I won't be displayed, it does not work!\n"
runpython.php
<code><?php
$query='./../python/bin/python cgi-bin/script.py 2>&1';
$command=escapeshellcmd($query);
$output=shell_exec($command);
echo $output;
$last_line=system($query, $retval);
echo '
Последняя строка вывода: '. $ last_line. '
Возвращаемое значение: '. $ RetVal;
?>
Я ожидаю, что оба отпечатка будут отображены из скрипта Python, однако он отображает только первый отпечаток.
что-то идет не так при импорте установленных пакетов pip.
Error message (output):
OpenBLAS blas_thread_init: pthread_create failed for thread 15 of 20: Resource temporarily unavailable
OpenBLAS blas_thread_init: RLIMIT_NPROC 25 current, 30 max
OpenBLAS blas_thread_init: pthread_create failed for thread 16 of 20: Resource temporarily unavailable
OpenBLAS blas_thread_init: RLIMIT_NPROC 25 current, 30 max
OpenBLAS blas_thread_init: pthread_create failed for thread 17 of 20: Resource temporarily unavailable
OpenBLAS blas_thread_init: RLIMIT_NPROC 25 current, 30 max
OpenBLAS blas_thread_init: pthread_create failed for thread 18 of 20: Resource temporarily unavailable
OpenBLAS blas_thread_init: RLIMIT_NPROC 25 current, 30 max
OpenBLAS blas_thread_init: pthread_create failed for thread 19 of 20: Resource temporarily unavailable
OpenBLAS blas_thread_init: RLIMIT_NPROC 25 current, 30 max
Traceback (most recent call last):
File "cgi-bin/bw-colorization/bw2color_image.py", line 13, in
import numpy as np
File "/home4/johndooc/python/lib/python2.7/site-packages/numpy/__init__.py", line 142, in
from . import core
File "/home4/johndooc/python/lib/python2.7/site-packages/numpy/core/__init__.py", line 95, in
from . import numeric
File "/home4/johndooc/python/lib/python2.7/site-packages/numpy/core/numeric.py", line 39, in
from ._internal import TooHardError, AxisError
File "/home4/johndooc/python/lib/python2.7/site-packages/numpy/core/_internal.py", line 16, in
import ctypes
File "/home4/johndooc/python/lib/python2.7/ctypes/__init__.py", line 549, in
CFUNCTYPE(c_int)(lambda: None)
MemoryError
Last line of the output: MemoryError
Return value: 1MemoryError