Я потратил несколько дней на поиск ответов на serverfault и в других местах, и все безрезультатно. Я пытаюсь обслуживать динамический контент с помощью сценариев perl cgi (Apache 2.4.29 в Ubuntu 18.04.2). Сценарии Perl передаются браузеру в виде открытого текста, а не выполняются, а их результаты передаются.
Мой файл VirtualHost выглядит так:
ServerAdmin webmaster@localhost
DocumentRoot /data/www/html/tesserae-obvil
<Directory /data/www/html/tesserae-obvil/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
ScriptAlias /cgi-bin/ /data/www/html/tesserae-obvil/cgi-bin/
<Directory "/data/www/html/tesserae-obvil/cgi-bin/">
Options +ExecCGI +Indexes +MultiViews
Options FollowSymLinks
SetHandler cgi-script
Require all granted
</Directory>
ErrorLog /data/www/log/error.log
CustomLog /data/www/log/access.log combined
</VirtualHost>
Я включил модуль cgi с помощью sudo a2enmod cgi
, установил perl для Apache с sudo apt-get install libapache2-mod-perl2
и перезапустил Apache. Сейчас моя лучшая рабочая теория заключается в том, что Apache2 неправильно загружает Perl. Я нашел несколько инструкций по настройке CGI, но даже если они предназначены для текущей версии, они упоминают добавление строки LoadModule в httpd.conf, которая, как я понимаю, устарела.
У меня закончились идеи. Кто-нибудь может помочь?