The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Вышел mod_perl 2.0.9

19.06.2015 08:33

После двух лет разработки доступна новая версия Apache-модуля mod_perl 2.0.9. Mod_perl позволяет интегрировать интерпретатор Perl в http-сервер Apache и увеличить скорость выполнения динамического контента на Perl за счёт кэширования его байткода, а также обеспечить низкоуровневый доступ perl-скриптов ко внутренностям Apache, в том числе даёт возможность создавать модули на языке Perl, управлять конфигураций, обрабатывать все стадии прохождения запроса.

Новая версия примечательна добавлением поддержки Apache httpd 2.4.x и переходом на новую модель распределения памяти при работе в системах с многопоточными MPM. В остальном в выпуске представлены мелкие улучшения и исправления проблем, например, устранены проблемы со сборкой в GCC 5. Выпуск Perl 5.22.x пока не поддерживается, его поддержка ожидается в mod_perl 2.0.10.

  1. Главная ссылка к новости (http://perl.apache.org/downloa...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/42460-perl
Ключевые слова: perl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (60) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (2), 08:46, 19/06/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –28 +/
    Вообще актуальные ребята. Perl для Web умер примерно лет 8-10 назад. Apache на боевых серверах я не видел уже лет 5 точно.
     
     
  • 2.3, Анонимус_б6 (ok), 08:52, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +22 +/
    а что ты видел на боевых серверах? IIS?
     
     
  • 3.6, adminlocalhost (?), 09:16, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    nginx +
    Если хостинг не шаровый и php, то щас это php-fpm обычно.
    А про всякие джанги и рельсы с нодой и говорить нечего, нафиг им апач вообще сдался...
     
     
  • 4.12, th3m3 (ok), 11:26, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не поверишь...
     
     
  • 5.18, Аноним (-), 13:59, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, эту новость на нтв крутить
     
  • 4.16, rob pike (?), 12:55, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    http://slonik-v-domene.livejournal.com/99505.html
    http://slonik-v-domene.livejournal.com/141951.html
    http://slonik-v-domene.livejournal.com/142305.html
     
     
  • 5.25, Аноним (-), 16:15, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Pike ну вот почему из кучи статей в интернете ты выбрал статьи аффтара - самого тупого и самоуверенного индюка вся Рунета?! Ну ведь даже не смех сквозь слёзы, а просто спазмы хохота от его статей... Не понимаю.
     
     
  • 6.29, rob pike (?), 19:11, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну я ж не виноват что он такой. Да не детей с ним крестить.
    В данном случае зерно истины в его словах присутствует.
     
     
  • 7.31, rob pike (?), 19:46, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    TL;DR http://plumqqz.livejournal.com/292784.html?thread=3104688#t3104688
     
  • 4.35, njunkie (ok), 21:13, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > nginx +
    > Если хостинг не шаровый и php, то щас это php-fpm обычно.
    > А про всякие джанги и рельсы с нодой и говорить нечего, нафиг
    > им апач вообще сдался...

    В общем-то если ты их не видел, это не значит что их нет. Корпоративные клиенты в отличии от хипстеров-стартаперов больше доверяют стабильному (читай  старому как гогно мамонта, коду). Корпоративных клиентов ооооочень много.

     
     
  • 5.38, rob pike (?), 22:45, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И правильно делают. Большинству корпоративных клиентов надо чтоб работало, а не чтоб весело было играться в процессе очередного переизобретения всего.
     
     
  • 6.39, njunkie (ok), 23:17, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Как всегда истина где-то посредине. NGINX, благодаря своей асинхронности по-умолчанию, будет попроизводительней апача, но с другой стороны те, кому нужна производительность, поставят себе железный балансировщик, тем, кому она не нужна, будут сидеть на голом апаче, хипстеры будут мастурбировать на всё новое. Из реальных кейсов:
    -Нжинкс не даёт прироста просто потому что бэкэнд очень медленный
    -Нам не нужен нжинкс, у нас бэкэнд нацелен на точность обработки данных и нам нужна их гарантированная доставка и обработка, потому производительность где-то на заднем плане
    -Мы не доверяем быстрорастущим проектам
    -Сайтам-визиткам вообще не нужна производительность.
     
     
  • 7.40, rob pike (?), 00:13, 20/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы всё в кашу смешали.

    > NGINX, благодаря своей асинхронности по-умолчанию, будет попроизводительней апача

    В качестве фронтенда-балансера, но и только.

    > кому нужна производительность, поставят себе железный балансировщик

    Типа F5? Там внутри не очень железно, и очень криво. Кто-то поставит, конечно, но совсем не из-за производительности.

    > тем, кому она не нужна, будут сидеть на голом апаче

    Либо карьерный самосвал, либо детский самокат, третьего не дано. Интересный у вас взгляд на мир.

    Дальнейший поток сознания не смог прокомментировать по причине трезвости.

     
  • 3.8, Xaionaro (ok), 09:22, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Надо признать, что на нашем хостинге тоже процентное соотношение apache httpd против остальных ощутимо снижается. Для Ruby используют свои приблуды, на golang тоже обычно свой встроенный сервер, php потихонечку мигрируется на hhvm (который висит отдельно и обслуживается через nginx), для java используют apache tomcat… и т.д.
     
     
  • 4.37, rob pike (?), 22:42, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Очень похоже на зоопарк недо-make-ов.
    На каждом языке надо обязательно запилить своё, ни с чем несовместимое, кривое и с квадратными колёсами.
    А то неудобно как-то - язык есть, а собственной системы сборки (написанной, конечно, на нём же) нет. Засмеют же.
     
     
  • 5.60, Xaionaro (ok), 06:56, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Очень похоже на зоопарк недо-make-ов.
    > На каждом языке надо обязательно запилить своё, ни с чем несовместимое, кривое
    > и с квадратными колёсами.
    > А то неудобно как-то - язык есть, а собственной системы сборки (написанной,
    > конечно, на нём же) нет. Засмеют же.

    Тут проблема немного в другом. Например куда в apache httpd вы будете пихать Java-вские War-ы? Или например принято считать, что у golang бешеный parallelism и concurancy [1], так почему бы это не использовать для обработки http-запросов? Да и вообще так было проще для программистов на Go, IMO. И т.д.

    [1] http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=threadring

    P.S.: Вообще очень иронично слышать от Rob-а Pike-а такого рода критику в сторону Go :)

     
     
  • 6.61, Xaionaro (ok), 08:31, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати говоря, вы действительно считаете, что apache2 httpd -- это разумное решение в наше время?

    P.S.:
    > concurancy

    Не проспался, имелось в виду: "concurrency".


     
  • 3.58, Ivanb (?), 00:36, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А ты хоть знаешь что такое cpan?
    Или сколько книг написано по perl.
    Не скоро php и python догонят perl.
    А mod_perl есть альтернатива достойная и на столько же стабильная?
    Для начала почитай что это вообще такое, а потом... молчи.
     
     
  • 4.64, Аноним (-), 13:23, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > А mod_perl есть альтернатива достойная и на столько же стабильная?

    есть протокол PSGI, мне очень нравится как это сделано в uwsgi. перешёл на него с мод-перла. протокол стабилен. фреймворк у меня свой :)

     
  • 2.5, Evolve32 (ok), 09:16, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Perl для Web нисколько не умер. Да и Апач тоже.
     
  • 2.9, Аноним (-), 09:34, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я для своих django-проектов использую apache2 + mod_wsgi. Просто конфигурируется, ничего не сбоит.
     
     
  • 3.10, YetAnotherOnanym (ok), 10:26, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Непатриотично же. nginx - нашевсё.
     
     
  • 4.11, scorry (ok), 10:43, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Патриотично же вообще интернет не использовать.
     
  • 3.36, njunkie (ok), 21:16, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Я для своих django-проектов использую apache2 + mod_wsgi. Просто конфигурируется, ничего
    > не сбоит.

    Ну, признаться честно,  связка gunicorn/uwsgi + nginx  тож довольно таки хорошо и стабильно работает. Кому что нравится, на самом деле.

     
  • 2.13, Аноним (-), 11:32, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    А Канаду ты видел когда-нибудь? Вдруг её тоже не существует?
     
     
  • 3.26, Аноним (-), 16:17, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > А Канаду ты видел когда-нибудь? Вдруг её тоже не существует?

    Я знал что я всего лишь горстка байт в виртуальной реальности! Спасибо Морфеус!

     
  • 2.19, upwork (?), 14:13, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ну и зачем такую ерунду говорить ;-) и то и другое осталось на своих позициях, причем apache более чем
     
  • 2.44, oopss (?), 18:33, 20/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не поверишь, но mail.ru, booking.com и многие другие с тобой не согласятся. Гугли psgi/plack, mojolicoious и dancer2
     

  • 1.14, vitalif (ok), 12:17, 19/06/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Perl может и не умер, но вот mod_perl точно гнать надо отовсюду с^#ной метлой. Какие иногда под ним баги происходят, не воспроизводимые в голом перле... А как его глючит при включении перезагрузки модулей... А как он течёт и сколько памяти жрёт, особенно если несколько приложений с PerlOptions +Parent в одном апаче гонять... Ужос, нах.

    Я в багзиллу вместо него впилил pure-perl HTTP сервер на основе HTTP::Server::Simple.

    А ещё более правильный подход - это Plack/Starman. Тоже pure-perl + API на замену дебильному CGI.

     
     
  • 2.15, Crazy Alex (ok), 12:27, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Причём эти баги там всю жизнь были, и пользоваться этой штукой не рекомендовалось. FastCGI - наше всё.
     
     
  • 3.22, Аноним (-), 14:55, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Причём эти баги там всю жизнь были, и пользоваться этой штукой не рекомендовалось. FastCGI - наше всё.

    Сколько пользуюсь и копаюсь в modperl - ниразу не видел баги. Дайте пример того как воспроизвести баги и я с ними разберусь.

     
     
  • 4.24, rob pike (?), 15:24, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    "Багами в mod_perl" издревле было принято называть вот это, упомянутое "ой, оно ведёт себя не так как под голым перлом!". Причём в документации описано что именно так себя ведет, как именно не так и почему.

    Хотя баги были - и во времена апача 1.3, и пока второй был сырой (довольно долго). И сейчас что-то по мелочи наверное осталось, как в любом софте.

     
     
  • 5.32, Аноним (-), 20:42, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > "ой, оно ведёт себя не так как под голым перлом!"

    Так что именно? Я с modperl2 очень хорошо разобрался и местами даже восхищаюсь им как и архитектурой apache (nginx на фоне apache выглядит "безголосой попсой").

     
     
  • 6.33, rob pike (?), 21:01, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Это не ко мне вопрос, но обычно - начиная прямо с классики - https://perl.apache.org/docs/2.0/user/troubleshooting/troubleshooting.html#Som
     
     
  • 7.34, Аноним (-), 21:12, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > но обычно - начиная прямо с классики - https://perl.apache.org/docs/2.0/user/troubleshooting/troubleshooting.html#Var

    Ну тут ничего необычного, детские болезни новичков. Это не проблема.

     
  • 4.45, PavelR (??), 20:41, 20/06/2015 [^] [^^] [^^^] [ответить]  
  • +/

    >Дайте пример того как воспроизвести баги и я с ними разберусь.

    Ха-ха-ха. Какой гонор.

    Возьмите mod_perl + CGI.pm. Попробуйте, для начала, 404 ответ со своим контентом выдать.
    Потом сделайте контент размером более 8кб. Удивитесь разнице в поведении.
    Не забудьте посмотреть, какой статус логируется в access-лог, и какой код ответа идет браузер. Удивитесь несоответствию в определенном сочетании модулей и размера ответа.

    Пойдем дальше. Включите/выключите mod_deflate apache-2.2. Проведите те же самые тесты.

    Попробуйте выдать свой код ответа, отличный от 2хх/3хх, например собственную 500-ю...
    Порадуйтесь тому, как просто это всё удается.

    Удачи в разбирательствах с багами.

     
     
  • 5.47, Аноним (-), 04:00, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Вот обязательно свои быдлячьи манеры показыва - Хотя чего это я но по порядку... большой текст свёрнут, показать
     
     
  • 6.52, PavelR (??), 17:14, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    gt оверквотинг удален Да я переанализировал половину кода mod_perl изучил ис... большой текст свёрнут, показать
     
  • 2.17, anonymous (??), 13:18, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Или Plack/uwsgi, Plack/FCGI, Plack/mod_psgi, ...
     
  • 2.20, erera22 (ok), 14:18, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Согласен по всем пунктам. Единственно, чаще всего, для решений на perl, используют nginx-фронт и mojolicious на back-end.

    А Perl на shared-хостингах - это, преимущественно, CGI скрипты. Для решения конкретных задач проекта, не более.

     
     
  • 3.21, rob pike (?), 14:54, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Причём всё что делает этот back-end на mojo - это заворачивает ответы БД в JSON.
    Смысл каковой деятельности примерно сводится к
    >Программисту предоставляется возможность вместо работы с незнакомым высокоуровневым декларативным языком иметь дело со знакомым низкоуровневым процедурным. В итоге в описании результата "херово работает" удивление, по сути, должно вызывать не "херово", а "работает"
     
     
  • 4.27, angra (ok), 17:46, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Причём всё что делает этот back-end на mojo - это заворачивает ответы БД в JSON.

    Расскажи, что именно в mojolicious относится к этой деятельности. Ну кроме возможности выдавать ответы в том числе и в json. Встроенной работы с БД там нет, дефолтный рендер там html шаблоны, а не json.
    Может ты с рельсами попутал или еще каким фреймворком, который делает 90% работы нужной для типичного веб приложения?

     
     
  • 5.30, rob pike (?), 19:13, 19/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > дефолтный рендер там html шаблоны, а не json

    Хорошо, поправка - я имел в виду "в лучшем случае - в JSON заворачивать". Про HTML-шаблоны в 2015 году было бы слишком грубо сразу вот так думать о людях плохо.

     
     
  • 6.41, angra (ok), 04:18, 20/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    JSON плохо, HTML плохо. В каком же виде должен выдавать по твоему мнению результаты вебфреймворк?
    Ну и ты проигнорировал суть вопроса, повторю его еще раз: "Что в mojolicious есть такого, что делает его пригодным только для заворачивания ответов БД в JSON?".
     
     
  • 7.43, rob pike (?), 15:01, 20/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > JSON плохо, HTML плохо. В каком же виде должен выдавать по твоему мнению результаты вебфреймворк?

    JSON - хорошо. И HTML иногда нужен.

    Вебфреймворк ничего не должен выдавать ни в каком виде по причине полной собственной ненужности в подавляющем большинстве случаев.

     
     
  • 8.55, angra (ok), 18:03, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так сразу бы и сказал, что считаешь ВСЕ вебфреймворки ненужными Случай тяжел... текст свёрнут, показать
     
  • 2.59, Ivanb (?), 04:18, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Руки кривые. Вот и память течет!!!
    Английский нужно учить и мануалы до конца дочитывать и ничего не будет течь.
    PerlOptions +Parent - это mod_perl????
    mpm слыхал такое?
    Голый perl - это как?
     

  • 1.23, Аноним (-), 14:57, 19/06/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > После двух лет разработки доступна новая версия Apache-модуля mod_perl 2.0.9

    ну наконец-то, а я то я малось заждался..

     
  • 1.42, Аноним (-), 07:00, 20/06/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Новая версия примечательна добавлением поддержки Apache httpd 2.4.x...

    А 2.0.8 не работал что ли? Попробовал поставить на бубунте 14.04 mod_perl 2.0.8, а он тоже работает с апачей 2.4.x.

    Все ставилось из бубунтийских реп. Насильно ничего впихивать не пришлось. В логах апачи при старте выдается: Apache/2.4.7 (Ubuntu) mod_apreq2-20090110/2.8.0 mod_perl/2.0.8 Perl/v5.18.2 configured

     
     
  • 2.62, oops (ok), 11:16, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А вы потрудитесь, посмотрите как, кто и откуда есть пошла в 2.0.8 поддержка apache 2.4. Если  кратко - нет, не работало, до неофициального патча от апачевцев.
     

  • 1.46, Аноним (-), 21:17, 20/06/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    писал на модперле больше 5 лет. в итоге, когда понял, что он таки "всё", перешёл на nginx+uwsgi, нисколечко не жалко. избавился от кучи багов, часть которых были от APR.

    ненужнисты и неосисляторы -- встать в угол и молчать полчаса.

     
     
  • 2.48, Аноним (-), 04:15, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Выше в комментариях уже просили привести примеры багов, но как-то реального примера никто так и не привел. :( Приведите пожалуйста примеры "кучи багов".

    Я не ради праздного интереса спрашиваю, у меня есть несколько сайтов, которые работают с использованием mod_perl.

     
     
  • 3.49, Аноним (-), 16:51, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    навскидку знаю два. разбор не совсем корректных кук и явный бинарный utf-8 в теле запроса POST. для обоих потребовались воркэраунды в приложении. про куки в чём их некорректность не могу сказать, кроме того, что они не парсились модулем Apache2::Cookie и, кажется, это роняло воркера. я просто на стэковерфлоу нашёл ответ и применил их воркэрануд. для решения второго пришлось написать разбор реквеста самостоятельно. запрос такой приходил в уведомлении от платёжной системы, код которой я не мог поменять. что не отменяет, конечно, странного факта наличия русского имени "Всеволод" на карте виза.
     
     
  • 4.51, Аноним (-), 17:09, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    уточните версии модулей и окружения которое использовалось чтобы попробовать воспроизвести
     
     
  • 5.54, Аноним (-), 18:03, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > уточните версии модулей и окружения которое использовалось чтобы попробовать воспроизвести

    стандартный debian7. http://stackoverflow.com/questions/8594363/expected-token-not-present-error-i

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

     
  • 3.50, Аноним (-), 17:07, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    у меня тоже есть сайты на мод-перл, они работают и будут ещё долго работать но ... большой текст свёрнут, показать
     
     
  • 4.53, Аноним (-), 17:59, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > мне нужно было динамически добавлять ServerName в виртуалхост. это оказалось невозможно

    я в свое время успешно реализовал конфигурацию "на лету", может это поможет: http://perl.apache.org/docs/2.0/api/Apache2/PerlSections.html#C___Apache2__Pe

    > все виртуалхосты шарят один и тот же пул интерпретаторов перла

    http://perl.apache.org/docs/2.0/user/config/config.html#C_Parent_

     
     
  • 5.56, Аноним (-), 18:08, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >> мне нужно было динамически добавлять ServerName в виртуалхост. это оказалось невозможно
    > я в свое время успешно реализовал конфигурацию "на лету", может это поможет:
    > http://perl.apache.org/docs/2.0/api/Apache2/PerlSections.html#C___Apache2__Pe

    это, как мне кажется, решает другую задачу. мне надо было управлять ServerName без перезагрузки апача. ну, точнее, мне так хотелось. на мой вопрос Torsten Förtsch предложил мне заимплементить не доделанную функциональность.

    >> все виртуалхосты шарят один и тот же пул интерпретаторов перла
    > http://perl.apache.org/docs/2.0/user/config/config.html#C_Parent_

    мне было не актуально, но спасибо, мысленно вычеркну этот пункт из недостатков :)

     
     
  • 6.57, Аноним (-), 23:17, 21/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > это, как мне кажется, решает другую задачу. мне надо было управлять ServerName без перезагрузки апача. ну, точнее, мне так хотелось. на мой вопрос Torsten Förtsch предложил мне заимплементить не доделанную функциональность.

    Не совсем. Сейчас уже детали не вспомню, но я как раз делал динамическое управление виртуальными хостами (в т.ч. и задание ServerName) и у меня работало.

     
     
  • 7.63, Аноним (-), 13:19, 22/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    ну я как-то выкрутился в итоге тоже, но точно помню, что в 2009г, когда мне это было нужно, не нашёл прямого способа для этого. список рассылки мод-перла мне так же не помог.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру