forum.bitel.ru http://forum.bitel.ru/ |
|
Проблемы с кодированием URL http://forum.bitel.ru/viewtopic.php?f=8&t=2982 |
Страница 1 из 1 |
Автор: | borisk [ 06 окт 2009, 18:44 ] |
Заголовок сообщения: | Проблемы с кодированием URL |
Добрый день! Пытаюсь запустить дилерский интерфейс. Шлюз nginx, настройки как в wiki. Но проблема в том, что у меня русские имена договоров, и при передаче их в URL похоже возникает ошибка декодирования. Передаю в URL номер договора ДФ-2, в логах вот такое: 10-06/18:39:50 INFO [http-8080-1] LoggingPrintStream - поз. 1 искомое значение %Р?Р?-2% дата 06.10.2009 То есть похоже что URL передается в UTF-8 В качестве клиента использую Firefox 3.5 для проверки. Что можно сделать для исправления ситуации? |
Автор: | skn [ 06 окт 2009, 20:00 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
для теста сделайте страницу в кодировке cp1251, а на ней сслыку с нужным url Firefox кодирует запрос в кодировке страницы (вроде).... |
Автор: | borisk [ 06 окт 2009, 20:22 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
Увы, не помогло. На сколько мне известно это какой-то новый стандарт де факто о том, что URL должны кодироваться в utf-8. |
Автор: | borisk [ 06 окт 2009, 21:28 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
Вот, нашел: When a new URI scheme defines a component that represents textual data consisting of characters from the Universal Character Set [UCS], the data should first be encoded as octets according to the UTF-8 character encoding [STD63]; http://tools.ietf.org/html/rfc3986 Пункт 2.5, последний абзац |
Автор: | skn [ 06 окт 2009, 22:22 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
это все хорошо, но биллинг все запросы на данный момент пытается декодировать как "Cp2151" соответственно и вам нужно отправить запрос использую urlencode в "cp1251" надеюсь так пробовали???? Код: <html> <head> <meta http-equiv="content-type" content="text/html; charset=cp1251" /> </head> <body> <a href="http://yandex.ru/?title=ДФ-1">ссылка</a> </body> </html> можете просто из строки браузера, замените ДФ-2 на %C4%D4-2 |
Автор: | borisk [ 07 окт 2009, 09:25 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
Конечно пробовал. Вариант как вы привели с html не работает, вариант с ручным кодированием работает. Смысл понятен. Но, imho, в 5й версии стоит уже перейти на utf-8, чтоб было все по стандартам. Или хотя-бы ввести какой-нибудь ключ в какой кодировке воспринимать параметры запроса. |
Автор: | skn [ 07 окт 2009, 14:59 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
borisk писал(а): Конечно пробовал. Вариант как вы привели с html не работает, вариант с ручным кодированием работает. страно, для ручного я коды получил как раз из этого html... borisk писал(а): Но, imho, в 5й версии стоит уже перейти на utf-8, чтоб было все по стандартам. Или хотя-бы ввести какой-нибудь ключ в какой кодировке воспринимать параметры запроса. подумаем, но придеться во многих местах менять... |
Автор: | snark [ 13 окт 2009, 23:36 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
м.б. чтобы менять поменьше стоит повесить на url какую нить paseUrl() которая будет ловить url и, если есть необходимость - конвертировать в уже работающую cp1251? тогда менять меньше придется = меньше шанса ошибиться |
Автор: | Kazrarr [ 14 апр 2010, 12:06 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
Та же ситуация, только запросы идут в 1251 и биллинг их не принимает, в utf-8 проблем нет.. дилер говорит что работают с другим оператором с BGBilling'ом аналогично, и платежи проходят |
Автор: | skn [ 14 апр 2010, 19:36 ] |
Заголовок сообщения: | Re: Проблемы с кодированием URL |
а у другого оператора номера договоров тоже на русском? |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |