URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 5926
[ Назад ]

Исходное сообщение
"Embperl + UTF8"

Отправлено George Piskorsky , 13-Авг-08 10:21 
Есть связка apache-1.3.41, Embperl-1.3.6, Perl v5.8.8, postgresql 8.2.9

Удалось сделать так, чтобы в консоль с окружением:
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_COLLATE=POSIX
LC_TIME="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"

нормально выводился результат выполния с помощью embpexec.pl,
однако через браузер - вместо текста в UTF8 - кракозябры (кракозябры именно с текстом, который выковыривается из базы, со статикой на странице - никаких проблем).

Если сделать embpexec.pl ./test.epl > test.html, то test.html нормально открывается браузером.

Кроме локали пользователя для локализации сделано следующее:
AddDefaultCharset UTF-8 - в Апаче
База в постгресе - UTF8
В перловых скриптах - use utf8;
При сборке embperl файл epchar.c заменён на epchar.c.min

Собственно вопрос - что сделать чтобы получить UTF-8 через браузер в таком случае?


Содержание

Сообщения в этом обсуждении
"Embperl + UTF8"
Отправлено George Piskorsky , 13-Авг-08 19:51 
В общем кто-то воспринимает UTF8 символ побайтно как 2 символа.

При этом результат выполнения
[+ DBI::data_string_desc($locations_name) +]
выглядит как
UTF8 on, non-ASCII, 3 characters 6 bytes


"Embperl + UTF8"
Отправлено George Piskorsky , 14-Авг-08 16:58 
Надоело.

Поставил Apache 2.2, mod_perl2 и Embperl 2.3 - всё нормально работает.