Подключение Perl к FAMP-серверу

Данное руководство позволяет запустить интерпретатор Perl и расширить стек FAMP на ОС FreeBSD 13.0.

Настройка FAMP-сервера описана здесь: https://dondub.com/2021/07/zapusk-famp-servera/. Поэтому все предыдущие установки и настройки берём именно оттуда.

Затем установим необходимые модули Perl для Apache

# pkg install ap24-mod_perl2 p5-DBI p5-Apache-DBI

драйвер для работы Perl с СУБД PostgreSQL

# pkg install p5-DBD-Pg

а также драйвер СУБД MariaDB для Perl с помощью сетевого набора модулей cpan

# cpan DBD::MariaDB

После установки модулей Perl в директории /usr/local/etc/apache24/modules.d/ появится файл 260_mod_perl.conf. Открываем его

# vi /usr/local/etc/apache24/modules.d/260_mod_perl.conf

и раскомментируем строку:

LoadModule perl_module        libexec/apache24/mod_perl.so

После этого откроем основной файл конфигурации Apache

# vi /usr/local/etc/apache24/httpd.conf

и сразу после блока

<Directory "/usr/local/www/apache24/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

вставим такие:

<Location /cgi-bin/*.pl>
    SetHandler perl-script
    PerlResponseHandler ModPerl::PerlRun
    PerlSendHeader On
    Options ExecCGI
    Require all granted
</Location>
<Location /cgi-bin/*.cgi>
    SetHandler perl-script
    PerlResponseHandler ModPerl::PerlRun
    PerlSendHeader On
    Options ExecCGI
    Require all granted
</Location>

Далее перезапускаем службу apache24

# service apache24 restart

Затем создадим скрипт для проверки работы Perl /usr/local/www/apache24/cgi-bin/test.cgi

# touch /usr/local/www/apache24/cgi-bin/test.cgi

назначим ему необходимые права

# chmod 755 /usr/local/www/apache24/cgi-bin/test.cgi

откроем его

# vi /usr/local/www/apache24/cgi-bin/test.cgi

и пропишем следующие строки:

#!/usr/local/bin/perl

print "Content-Type: text/html; charset=utf-8 \n\n";
print "<h1>Файл test.cgi работает!</h1>";

Далее на другой машине в сети в адресной строке браузера вводим такой адрес: http://IP_или_имя_хоста/cgi-bin/test.cgi

Должна появиться страничка с надписью «Файл test.cgi работает!«

Также можно создать CGI-скрипт с краткой информацией о данном сервере

# touch /usr/local/www/apache24/cgi-bin/cgi.pl
# chmod 755 /usr/local/www/apache24/cgi-bin/cgi.pl

открываем его

# vi /usr/local/www/apache24/cgi-bin/cgi.pl

и впишем такие строки:

#!/usr/bin/perl

print "Content-Type: text/plain; charset=utf-8 \r\n\r\n";
print "Информация о сервере: \n";

foreach ( keys %ENV  ) {
        print "$_\t$ENV{$_}\n";
}

На другой машине в сети в адресной строке браузера вводим такой адрес: http://IP_или_имя_хоста/cgi-bin/cgi.pl

На странице должна отобразиться информация о сервере в таком виде:

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *