Как я могу вызвать Perl со своей страницы PHP на Apache?

StackOverflow https://stackoverflow.com/questions/827302

  •  05-07-2019
  •  | 
  •  

Вопрос

мы с другом создаем парсер логов для серии игр.Мы написали интерфейс (веб) на PHP/MySQL и парсер на Perl (разумеется, также используя MySQL).Теперь у нас проблемы с общением этих двоих.

Единственное, чего мы не хотим делать, это:одна страница администрирования онлайн, где есть кнопка «разобрать».При нажатии на эту кнопку должен запуститься Perl-скрипт.Например, «exec(»perl /home/www/Init.pm -f games_mp.log»).

Это возможно?Помните, что настроить его должно быть легко.

Мы перепробовали все, от system/exec до .htaccess, но ничего из коробки не работает.Вообще не работает.

Предложения?

лака =)

Это было полезно?

Решение

К сожалению, нет простого способа настроить это.Разные серверы имеют разные конфигурации Apache по умолчанию.

Вероятно, вам нужно добавить следующую строку в конфигурацию сервера, конфигурацию виртуального хоста, конфигурацию каталога или, при правильной настройке, .htaccess.

AddHandler cgi-script .cgi .pl .pm

Вашим пользователям также необходимо будет соответствующим образом изменить и изменить файлы.

Дело в том, что это похоже на длительный процесс.Если это так, то запуск веб-браузера может занять очень много времени, прежде чем он завершится.В этом случае вам, скорее всего, захочется настроить какую-то очередь заданий и запускать скрипт cron на ее основе каждые 5 минут или около того.

Другие советы

Почему бы не запустить Perl-скрипт, как если бы он был веб-страницей из jQuery, используя mod_perl?

Я готов поспорить, что вы столкнулись с ошибками пути.Попробуйте указать полный путь к исполняемому файлу Perl.Например:

exec("/usr/bin/perl /home/www/Init.pm -f games_mp.log")

В PHP многое зависит от конфигурации.Попробуйте разобраться, так как многие операторы можно отключить.

Убедитесь, что программа Perl имеет правильные права.Попробуйте запустить программу Perl из командной строки.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top