Сценарии Perl / Python не могут получить доступ к Интернету / сети через веб-интерфейс

Другой способ, которым я мог бы задать этот вопрос:

Как настроить страницы, обслуживаемые Apache, на более высокие привилегии? Это было бы похоже на настройку пула приложений в IIS для использования других учетных данных.

У меня есть несколько скриптов Perl и Python, которые я публикую через веб-интерфейс. Внешний интерфейс предназначен для запуска любого сценария, который у меня есть в базе данных. С большинством сценариев у меня нет проблем … но все, что использует сеть, ничего не возвращает. Нет сообщений об ошибках или сбоях. Запуск из CLI как корень работает, запускается из WEB GUI как www-данные Вызов одной и той же команды не выполняется

Я объединяю Python и Perl в этом вопросе, потому что проблема одна и та же, что заставляет меня поверить, что это не проблема кода, а проблема с разрешениями. Кроме того, почему я не включаю код, изначально.

Они работают на Linux с использованием Apache и PHP5. Python 2.7 и Perl5 я считаю. Вот примеры приложений, которые у меня не работают:

  1. Python — подключение к VirusTotal API
  2. Perl — подключение к доменам и создание графа с GraphViz
  3. Perl — выполнение функции Wake On LAN в сегменте локальной сети.

0

Решение

Поэтому после публикации я посмотрел на обработчики, как я использую для IIS. Это привело меня на путь SUEXEC, и из-за всего, что я пытался, я не мог заставить Apache загрузить его. Даже убедился, что я установил биты для SETUID и SETGID.

Когда я исследовал, что натолкнулся на файлы .htaccess и то, как они могут включать сценарии CGI. Я не хотел вставлять файлы .htaccess, поэтому я просто удостоверился, что apache.conf настроен для поддержки CGI. Это также не помогло.

Наконец, когда я изучал .htaccess, они ссылались на ScriptAlias. Я считаю, что это то, что решило мою проблему. Я изменил раздел ScriptAlias ​​в файле конфигурации Apache, чтобы он указывал на мой каталог, содержащий скрипт. После некоторой возни с абсолютными каталогами и разрешениями для скрипта на чтение / запись файла я заставил все работать, кроме того, что он не проходит через прокси, установленный средой http_proxy. Хотя это отдельная проблема, поэтому я думаю, что мне стоит заняться этим вопросом. Я попробую то же самое решение на моей Perl LAMP.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]