Рейтинг:0

Apache - FastCGI и CGI бок о бок в одном каталоге?

флаг cn

Я использую сервер Apache 2.4.48 с mod_cgid и mod_fcgid. У меня есть несколько сценариев CGI под /cgi-бен/ и провели рефакторинг некоторых из них для использования FastCGI.Во время этого рефакторинга мне нужно найти способ поддержки запуска обоих типов скриптов из одного и того же каталога при сохранении их существующих имен, поэтому обычные методы создания нового пути (например, /fcgi-бин/) или переименовать их (например, в .fcgi) не подходят для моих нужд.

Моя текущая конфигурация для CGI в старом стиле выглядит примерно так:

Псевдоним сценария /cgi-bin/ "/var/www/cgi-bin/"
<Каталог /var/www/cgi-bin>
    Разрешить переопределить все
    Опции
    Требовать все предоставленные
</Каталог>

И я вручную устанавливал обработчик FastCGI для обновленных скриптов в .htaccess файл с такой директивой:

<Files "updated_fcgi_script.pl">
    SetHandler fcgid-script
</Files>

Но это довольно повторяющийся и громоздкий. Я надеялся облегчить себе задачу, создав новый путь в файловой системе, где могли бы жить обновленные сценарии FastCGI (например, /var/www/fcgi-bin/), псевдоним его /cgi-бен/, а затем установите обработчик в <Directory> директива, при этом Apache обслуживает скрипт из любого каталога, в котором он его находит. К сожалению, похоже, это не работает; Apache принимает конфигурацию как действительную, но возвращает «Отказано в доступе» для запросов к обе старые и новые сценарии CGI без какой-либо полезной информации в журналах.

Есть ли способ добиться того, чего я хочу, или он не поддерживается? Я не волшебник Apache, поэтому, возможно, я искал неправильные вещи. Спасибо!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.