У меня неправильная конфигурация apache. Мой сценарий не хочет выполняться, и браузер пытается загрузить его как файл.

<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName president.com

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /var/www/cgi/

<Directory /var/www/cgi/>
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Require all granted
AddHandler cgi-script .cgi .pl
</Directory>
  1. Скрипты принадлежат www-data:www-data с правами 755 и могут быть выполнены (+x).
  2. Шебанг например #!/ USR / бен / Perl.
  3. Журнал ошибок пуст.

Как решить эту проблему? Мне нужно, чтобы мои сценарии были выполнены

1 ответ1

0

Задача решена!

Я удаляю все Require all granted (это только для Apacvhe 2.4+) и вставляю:

Order allow,deny
allow from all

Также я перемещаю AddHandler cgi-script .cgi .pl в описание каталога DocumentRoot

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .