Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Раскодирование русских доменных имён, perl5.10 
:(
    Опции темы
tishaishii
Дата 3.9.2010, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Нужен механизм преобразования для русских доменных имён.
Например:

  http://скорпион.test.ru/ в http://xn--b1aaa1hbb.test.ru/

функция или модуль.
PM MAIL ICQ Skype   Вверх
DurRandir
Дата 3.9.2010, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 335
Регистрация: 27.9.2009

Репутация: 1
Всего: 17



Ключевое слово - punycode - там много разных модулей.
PM   Вверх
KSURi
Дата 3.9.2010, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 2
Всего: 27



Net::IDN::Encode


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
tishaishii
Дата 21.9.2010, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



А как узнать, что строчка - punycode?
PM MAIL ICQ Skype   Вверх
KSURi
Дата 21.9.2010, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 2
Всего: 27



/^xn--/


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
tishaishii
Дата 22.9.2010, 05:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Что-то думается, что не всегда xn--, может, это обозначение языка........
PM MAIL ICQ Skype   Вверх
vadiml
Дата 22.9.2010, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 27.7.2007

Репутация: нет
Всего: 7



Как для кодировки xn-- не нужно
Но для IDN домена xn-- используется всегда -- http://www.info.info/faq/how-do-browsers-r...nd-resolve-idns

PM MAIL Jabber   Вверх
Graphis
Дата 27.10.2010, 23:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 8.3.2008
Где: Николаев Украина

Репутация: нет
Всего: нет



У меня это происходит так:
Код

use URI::UTF8::Punycode;


sub punycodeEncode
{
        my ($domain) = @_;
        my $iname;
        my @dname;
        
        foreach my $key ( split('\.', lc($domain) ) ){
                if($key =~ m/&#/sg){
                        while($key =~ m/([0-9]{1,4})/sg){
                                $iname .= chr($1);
                        }
                $key = puny_enc($iname);
                }
        push(@dname,$key);
        $iname='';
        }
        my $newDomain = join('.',@dname);
        return $newDomain;
}


в функцию передаем в такой кодировке  
Код

секс.рф

данные из формы (charset=iso-8859-1)
амперсанд, решетка, десятичный код, точка с запятой.

на выходе получаем:  XN--E1AKTC.XN--P1AI

PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.0856 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.