sergey_1990
@sergey_1990
1

Почему при публикации на сервере Apache приложение django не запускает subpocess?

Добрый день впервые столкнулся с задачей запуска стороннего скрипта из приложения на django, реализовал это таким образом:
#view.py

def run_script(request):
    """ Запуск стороннего скрипта для анализа загруженной картинки"""

    #получаем только что сохранённый файл, формируем путь до него
    image = ImageToStudy.objects.order_by('-pk').first()
    file_to_study = '.'+MEDIA_URL+image.image.name
    #запускаем скрипт с аргументом= путь до картинки
    code=subprocess.call([sys.executable,'./script/one_letters_predict.py', file_to_study])
 
    if code == 0:

        with open("script/descr_letter.txt") as file:
            text = file.read().splitlines()

        context = {'text': text}
        return render(request, 'grafolog/script_text.html', context )
    if code == 1:
        context = {'text': 'что то пошло не так'}
        return render(request, 'grafolog/script_text.html', context )


если запускаю локально через manage.py всё работает, после развёртывания приложения на сервере Apache скрипт не запускается, при этом если приложение на сервере запустить через manage.py runserver "ip":8001 то оно отрабатывает как положено, предполагаю что дело в настройках wsgi, кто сталкивался с подобным просьба помочь!
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы