Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[apache-talk] <Perl> sections и переменные...



conf/httpd.conf:
...
PerlPassEnv WHOMISERVE LANG LC_TIME LC_NUMERIC LC_CTYPE LC_COLLATE
#0
#<Perl>
#foreach (sort keys %ENV) { "$ENV{$_}=$ENV{$_}\n" }
#</Perl>
...

NameVirtualHost ${IP}:${PORT}
...
<VirtualHost ${IP}:${PORT}>
Include conf/testsite.conf
</VirtualHost>

conf/testsite.conf:
...
#1
#PerlPassEnv WHOMISERVE LANG LC_TIME LC_NUMERIC LC_CTYPE LC_COLLATE
<Location />
<Perl>
use Memonet::Test::Apache;
push @PerlSetVar, Memonet::Test::Apache->data_config_to_var('testsite');
</Perl>
</Location>

Memonet::Test::Apache:
...
sub data_config_to_var {
    ...
    foreach (sort keys %ENV) { print "$_=$ENV{$_}\n" }
    ...
}
...

Apache/1.3.14 (Unix) mod_perl/1.24 rus/PL30.0
Debian (potato)

Вывод:
GATEWAY_INTERFACE=CGI-Perl/1.1
MOD_PERL=mod_perl/1.24
PATH=/home/ran/bin:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/ucb:/usr/bin/X11:/usr/games

Если раскомментировать #0 или #1 (т.е. обратиться к %ENV в perl section из
основного конфига или сказать PerlPassEnv во включаемом конфиге; вместо #0
помогает что-нибудь вроде PerlModule Apache::DBI), то вместо этого получаем

GATEWAY_INTERFACE=CGI-Perl/1.1
LANG=ru_RU.KOI8-R
LC_COLLATE=ru_RU.KOI8-R
LC_CTYPE=ru_RU.KOI8-R
LC_NUMERIC=POSIX
LC_TIME=POSIX
MOD_PERL=mod_perl/1.24
PATH=/home/ran/bin:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/ucb:/usr/bin/X11:/usr/games
WHOMISERVE=employee

что и требовалось. Вопрос: почему? Дома в той же конфигурации (только libc на
один security update старше) само работает и PerlPassEnv не требует...

P.S. И кстати: раньше та же секция вроде бы нормально отрабатывала за
пределами <Location />, а потом вдруг перестало, но я не очень отследил, в
какой момент. Тут не исключено, что я чего-нибудь в движке напортачил.

-- 
Artem Chuprina                            E-mail: ran@xxxxxxxxx
Programmer                                  FIDO: 2:5020/371.32
Memonet Ltd.                             Phone: +7-095-284-1356
=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.