Запуск скрипта Python с PHP - работает в консоли, а не в веб-браузере - PullRequest
0 голосов
/ 25 декабря 2018

Я пытаюсь запустить файл python из php в экземпляре ec2.Он работает в консоли ssh, используя php index.php Но он не работает в веб-браузере должным образом.

У меня есть программа на Python, которая принимает ввод и генерирует изображения

, если ввод - «красный цветок»он сгенерирует красный цветок с помощью tenorflow и nltk.

Здесь я заметил кое-что другое.Когда я ввожу этот код в файл Python

Мой фрагмент кода Python:

import getpass
username = getpass.getuser()
print username

и запускаю его из консоли, используя php index.php, я получаю вывод bitnami, но когда я запускаю тот же код, используямой веб-браузер я получаю вывод daemon

Мой фрагмент кода php:

<?php  
header('Access-Control-Allow-Origin: *');
define('ROOTPATH', dirname(__FILE__));
$output = exec('python test.py');
echo $output;
?>

Ожидаемый результат : изображение должно быть сохранено на сервере с использованием сценария Python

Фактический результат : изображение сохраняется, только если php-скрипт запускается из консоли

1 Ответ

0 голосов
/ 25 декабря 2018

Проблема решена!Как я уже упоминал в своем вопросе, у меня были проблемы с какими-то пользовательскими привилегиями, я изменил свой код и заставил его использовать битнами в качестве пользователя, и теперь он работает!

<?php  
header('Access-Control-Allow-Origin: *');
define('ROOTPATH', dirname(__FILE__));
$output = shell_exec('sudo -H -u bitnami python test.py ');
echo $output;
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...