Некоторые моменты при конфигурировании таких вещей как apache приходится делать снова и снова. Вот только перерыв между этим снова может быть 1 год. Буду дополнять эту запись при появлении новых моментов..
Прописывание директории для запуска скриптов perl
В httpd.conf добавить код. Директорию и путь подставить свой..
<Directory "/usr/local/apache/htdocs/lgtstat/ipstat">
SetHandler cgi-script
AllowOverride All
Options Includes FollowSymLinks ExecCGI
Order allow,deny
Allow from all
</Directory>
Перезапускаем apache
Создание виртуальных хостов с отдельными ip
Делаем alias на сетевой карте с новым ip (как конфигурировать alias в этой статье), затем в конфиг апача добавляем со своими путями следующие строки
NameVirtualHost 62.152.xx.xx
<VirtualHost 62.152.xx.xx>
ServerName www.domain.ltd
ServerPath /www.domain.ltd
DocumentRoot /usr/local/www/domain
CustomLog /usr/local/www/logs/domain/access_log combined
ErrorLog /usr/local/www/logs/domain/error_log
</VirtualHost>
Перезапускаем apache.
Создание виртуальных хостов на одном ip
Очень полезно на одном сервере на разных доменах держать кучу сайтов. Сайты лежат в разных директориях, логи для каждого сайта ведутся свои. Добавляем в конец httpd.conf.
NameVirtualHost *
<VirtualHost *>
DocumentRoot "/usr/local/apache2/htdocs/domain.ltd"
ServerName "domain.ltd"
ServerAlias "www.domain.ltd"
ErrorLog logs/domain.ltd/error_log
CustomLog logs/domain.ltd/access_log combined
</VirtualHost>
<VirtualHost *>
DocumentRoot "/usr/local/apache2/htdocs/domain2.ltd"
ServerName "domain2.ltd"
ServerAlias "www.domain2.ltd"
ErrorLog logs/domain2/error_log
CustomLog logs/domain2/access_log combined
</VirtualHost>
Сначала создать все необходимые директории сайтов и директории для логов, а потом перезапуск apache.
Установка модуля perl (mod_perl)
Легче всего установить из репозитария CPAN
root@mik# perl -MCPAN -e shell cpan[1]> install ModPerl::Registry
Установщик попросит набрать полный путь до файла apxs. Затем два раза набрать yes при тестировании модулей.
При установке важно смотреть на вывод компиляции, чтобы ошибок не было. Модуль называется mod_perl.so и должен установиться в каталог /usr/local/apache/modules
Выход из cpan – quit
Затем в конфиге апача дописываем
LoadModule perl_module modules/mod_perl.so
Перезапускаем apache.
Просмотр списка модулей perl установленных в системе
Создать скрипт .pl с таким содержимым
#!/usr/bin/perl
use ExtUtils::Installed;
$installed = ExtUtils::Installed->new();
foreach $module ($installed->modules()){
printf "Module: %s\t\tVersion: %s\n", $module, $installed->version($module);
}
Выполнив данный скрипт можно проанализировать какие perl скрипты стоят в системе.


