Полезности при конфигурировании apache сервера

logoНекоторые моменты при конфигурировании таких вещей как 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 скрипты стоят в системе.

Статья просмотрена 4 852 раз
Запись опубликована в рубрике Http, Сервера с метками , , , , , , , . Добавьте в закладки постоянную ссылку.

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

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

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>