информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetSpanning Tree Protocol: недокументированное применениеЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Проще, думаю, будет разобраться на примере. Как написано в... 29.01.05 22:27  Число просмотров: 4259
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
Проще, думаю, будет разобраться на примере. Как написано в статье:

Alias /perl/ /home/httpd/perl/
PerlModule Apache::Registry
<Location /perl>
SetHandler perl-script
PerlHandler Apache::Registry
Options ExecCGI
PerlSendHeader On
allow from all
</Location>

Там есть несколько таких типовых "конфигураций" - для остальных рассуждения аналогичные.

Разбираем по строчкам:

Alias /perl/ /home/httpd/perl/
Создание алиаса, то есть "синонима". Другими словами http://127.0.0.1/perl/ - тоже самое что и file:///home/httpd/perl/. Честно, не знаю как объяснить по-человечески, но, думаю, всё понятно. Эту строчку можно смело удалять - она нам не нужна.

PerlModule Apache::Registry
Подключение mod_perl - без этого никуда, оставляем, только лучше перенести это повыше - в самое начало второй секции.

<Location /perl>
...
</Location>
Внутри этой конструкции указываются настройки, которые будут действовать для директории сервера /perl. Что бы они начали действовать везде, необходимо "то что внутри" прописать для стандартной директории, то есть внутри конструкции
<Directory />
...
</Directory>

Теперь разберёмся с "внутренними" настройками "/perl" и изменим что надо.

SetHandler perl-script
Эта строчка указывает, что в "/perl" лежат perl-скрипты. Если мы хотим использовать их где угодно наряду с другими обработчиками, а не отдельно в одной папке, то нам выгоднее будет использование конструкции
AddHandler perl-script .pl
за пределами
<Directory />
...
</Directory>
(там ниже будет отдельная "подсекция" для AddHander'ов). Эта конструкция заставляет Апач воспринимать .pl-файлы как Перл-скрипты независимо от местоположения (однако сама по себе без PerlModule ничего не значит)

PerlHandler Apache::Registry
PerlSendHeader On
По логике вещей задают тоже обработчики Perl - я не вникал. Попробуй перенести эти строчки опять же для стандартной папки - должно сработать. Если нет, то тогда надо будет дополнительно почитать про эти директивы, хотя проблем возникнуть не должно.

Options ExecCGI
Эта директива говорит о том, что для папки разрешено выполнять CGI-сценарии (Perl к ним относится). Там есть много различных значений, но скорее всего пригодятся только Includes и Indexes - первая для включения SSI, вторая для поддержки "индексных" файлов типа index.html, которые прописываются в DirectoryIndex. То есть должно быть (в общем случае) так:
Options ExecCGI Incdexes Includes

allow from all
Эта директива говорит о том, что доступ до данной папки доступен всем желающим - стоит оставить без изменений. Полезна только тогда, когда есть желание перекрыть доспуп до сайта отдельным пользователям или странам.

Итого должно получиться следующее:

PerlModule Apache::Registry
<Directory />
PerlHandler Apache::Registry
Options ExecCGI Includes Indexes
PerlSendHeader On
allow from all
</Directory>
AddHandler perl-script .pl

Несколько заключительных комментариев.

Указанное выше надо не дополнительно прописывать в httpd.conf, а изменять уже существующие записи для стандартной директории (в начале второй секции уже стоят настройки по умолчанию).

Options и Allow выставляются вообще говоря исключительно по желанию - непосредственно на perl-сценарии они никак не влияют. Однако если есть желание использовать SSI, то для первого Apache должна быть добавлена директива AddHandler server-parsed, а для второго Апача AddOutputFilter, однако если вы уже использовали SSI, то они должны быть и без того настроены как надо.

Как уже говорил, в директивах PerlSendHeader и PerlHandler я не разбирался и возможно где-то наврал. Если это так, то надо будет просто поискать о них информацию - Яндекс, думаю, про них много знает.
<web building>
[Perl] {mod_perl} помогите установить 08.12.04 18:24  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
напишите мне на мыло кто знает как надо правильно установить mod_perl в apache под виндой
mailto:byrdin-666@yandex.ru
у нужно именно mod_perl? 08.12.04 18:56  
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
<"чистая" ссылка>
или просто чтобы скрипты Perl работали? Если второе то можно просто поставить в систему Perl (Active Perl к примеру) и прописать в конфиге апача
AddHandler cgi-script .cgi .pl
ну и все перловые скрипты должы иметь расширение *.pl и начинаться с #!Drive:\Path\to\perl.exe
Да нужен имено mod_perl 09.12.04 03:27  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Да нужен имено mod_perl
я заню как запускать скрипты из под apache 1 И apache2
но мне надо установить mod_perl даже установка через PPM почти помогает
модуль я устанавливаю перезапускаю apache2 и он мне сообщает что модуль mod_perl запущен с apache но когда начинаю прописывать запуск модулей выдает ошибку сто неможет найти директорию или модуль.
link inside 09.12.04 08:23  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
Сам в своё время ставил по инструкции (правда, не через PPM) - работало вполне нормально.

Installing mod_perl 1.0
Installing mod_perl 2.0
а по Русски есть!!! 28.01.05 13:21  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Сам в своё время ставил по инструкции (правда, не через
> PPM) - работало вполне нормально.
а по Русски есть!!!
я в школе не Инглышь изучать!!!
Используй mpinstall 28.01.05 13:35  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
Он автоматом всё закачает и настроит. Вручную останется только в httpd.conf подключить модуль. А может быть и этого не надо - не помню уже.


MP Install
еще один вопросик 28.01.05 14:00  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
еще один вопросик
немогу найти модуль Apache::Cookie Apache::Request
нашел но его надо компелировать но у меня неполучеется компелировать или наверное я еще не научился компелировать
если можно гненить есть откомпелированный
theoryx5.uwinnipeg.ca - тут нет
http://ppm.activestate.com/ - тут тоже нет
если можешь помоги
Reply 28.01.05 22:34  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
Если честно, никогда не слышал ни про Apache::Cookie, ни про Apahce::Request. Знаю тоже самое, но не "Apache::", а "HTTP::", однако никогда не использовал. Вопрос в том, а зачем оно надо? Если надо записать кукисы, то это имхо проще сделать с помощью модуля 'CGI' (стандартного). Если возникли какие-то более серьёзные задачи, то здесь замечательно поможет LWP.

Насчёт PMInstall - вот тот код, на который я давал ссылку надо сохранить в файле с расширением ".pl" и потом запустить. Если потребуется, то в первой строчке нужно изменить путь до интерпретатора Perl. Вот и всё, в общем-то. Perl_mod установлен.

Ещё нарыл ссылку по теме: http://www.woweb.ru/index.cgi?id=1065880573&a=p - там иожно почитать про настройку mod_perl под Apache. (Так же там написано про установку через CPAN, однако pminstall.pl я считаю проще)
mod_perl 29.01.05 08:16  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
спасибо все я разобрался!!!
если еще не надоел тоггда вопрос?
как сделать чтобы mod_perl выполнял файлы в корневом каталоге
например http://localhost/index.pl а не из http://localhost/perl/index.pl
вот такая делема!!!
помоги чем можешь
Проще, думаю, будет разобраться на примере. Как написано в... 29.01.05 22:27  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
Проще, думаю, будет разобраться на примере. Как написано в статье:

Alias /perl/ /home/httpd/perl/
PerlModule Apache::Registry
<Location /perl>
SetHandler perl-script
PerlHandler Apache::Registry
Options ExecCGI
PerlSendHeader On
allow from all
</Location>

Там есть несколько таких типовых "конфигураций" - для остальных рассуждения аналогичные.

Разбираем по строчкам:

Alias /perl/ /home/httpd/perl/
Создание алиаса, то есть "синонима". Другими словами http://127.0.0.1/perl/ - тоже самое что и file:///home/httpd/perl/. Честно, не знаю как объяснить по-человечески, но, думаю, всё понятно. Эту строчку можно смело удалять - она нам не нужна.

PerlModule Apache::Registry
Подключение mod_perl - без этого никуда, оставляем, только лучше перенести это повыше - в самое начало второй секции.

<Location /perl>
...
</Location>
Внутри этой конструкции указываются настройки, которые будут действовать для директории сервера /perl. Что бы они начали действовать везде, необходимо "то что внутри" прописать для стандартной директории, то есть внутри конструкции
<Directory />
...
</Directory>

Теперь разберёмся с "внутренними" настройками "/perl" и изменим что надо.

SetHandler perl-script
Эта строчка указывает, что в "/perl" лежат perl-скрипты. Если мы хотим использовать их где угодно наряду с другими обработчиками, а не отдельно в одной папке, то нам выгоднее будет использование конструкции
AddHandler perl-script .pl
за пределами
<Directory />
...
</Directory>
(там ниже будет отдельная "подсекция" для AddHander'ов). Эта конструкция заставляет Апач воспринимать .pl-файлы как Перл-скрипты независимо от местоположения (однако сама по себе без PerlModule ничего не значит)

PerlHandler Apache::Registry
PerlSendHeader On
По логике вещей задают тоже обработчики Perl - я не вникал. Попробуй перенести эти строчки опять же для стандартной папки - должно сработать. Если нет, то тогда надо будет дополнительно почитать про эти директивы, хотя проблем возникнуть не должно.

Options ExecCGI
Эта директива говорит о том, что для папки разрешено выполнять CGI-сценарии (Perl к ним относится). Там есть много различных значений, но скорее всего пригодятся только Includes и Indexes - первая для включения SSI, вторая для поддержки "индексных" файлов типа index.html, которые прописываются в DirectoryIndex. То есть должно быть (в общем случае) так:
Options ExecCGI Incdexes Includes

allow from all
Эта директива говорит о том, что доступ до данной папки доступен всем желающим - стоит оставить без изменений. Полезна только тогда, когда есть желание перекрыть доспуп до сайта отдельным пользователям или странам.

Итого должно получиться следующее:

PerlModule Apache::Registry
<Directory />
PerlHandler Apache::Registry
Options ExecCGI Includes Indexes
PerlSendHeader On
allow from all
</Directory>
AddHandler perl-script .pl

Несколько заключительных комментариев.

Указанное выше надо не дополнительно прописывать в httpd.conf, а изменять уже существующие записи для стандартной директории (в начале второй секции уже стоят настройки по умолчанию).

Options и Allow выставляются вообще говоря исключительно по желанию - непосредственно на perl-сценарии они никак не влияют. Однако если есть желание использовать SSI, то для первого Apache должна быть добавлена директива AddHandler server-parsed, а для второго Апача AddOutputFilter, однако если вы уже использовали SSI, то они должны быть и без того настроены как надо.

Как уже говорил, в директивах PerlSendHeader и PerlHandler я не разбирался и возможно где-то наврал. Если это так, то надо будет просто поискать о них информацию - Яндекс, думаю, про них много знает.
если можно то чуть-чуть по подробней 28.01.05 13:54  
Автор: kiss_my_ass Статус: Незарегистрированный пользователь
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach