LinuxForum.Fans
Тема

Webalizer проблема с кодировкой

Автор: v0id 10 сообщений 3467 просмотров
05.12.2011 14:11 #211017

тема избитая, но к сожалению решения не нашел.
на debian 6.0.3
в файле конфигурации Webalizerа раскомментирован HTMLHead и добавлено content="text/html; charset=koi8-r"
К сожалению картина не поменялась, в отчетах одни кракозябры

15.02.2014 21:14 #366653

Можно попробовать в файл /etc/webalizer/webalizer.conf
добавить строчку

text
TrueTypeFont /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf

(это меняет кодировку в генерируемых картинках).

06.02.2015 21:31 · отредактировано #413433

Какие еще шрифты использовать можно?
Потому как прописал эту строку и нечего не изменилось может еще чтото нужно сделать?

text
TrueTypeFont /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf

Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux

06.02.2015 21:36 #413435

viktor6, Они могут находится немного не там....
...откройте каталог /usr/share/fonts/truetype/ и там посмотрите что имеется в наличии, выбирайте что понравилось ну и в конфиг его....

06.02.2015 21:46 · отредактировано #413437
diablopc написал:
viktor6, Они могут находится немного не там....
...откройте каталог /usr/share/fonts/truetype/ и там посмотрите что имеется в наличии, выбирайте что понравилось ну и в конфиг его....

В наличии есть они, перепробовал с десяток этих шрифтов всеравно в картинке ероглифы мож что не так делаю?
Делаю в следующем порядке
Удаляю все из папки

text
OutputDir /var/www/webalizer

потом меняю шрифт

text
TrueTypeFont /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf

запускаю

text
webalizer -q

результат
http://stat.plusnet.ks.ua/clan/

06.02.2015 22:03 · отредактировано #413439

viktor6, Ну кодировку на самой странице оно правильно отрабатывает...
....а вот бинарник, который генерирует картинку, кодировку не ловит...
...попробуйте его запускать вот так:
[console]LANG="ru_RU.UTF-8" /path/to/app[/console]
и еще посмотрите в сторону: LC_LOCALE

06.02.2015 22:10 · отредактировано #413440
diablopc написал:
viktor6, Ну кодировку на самой странице оно правильно отрабатывает...
....а вот бинарник, который генерирует картинку, кодировку не ловит...
...попробуйте его запускать вот так:
[console]LANG="ru_RU.UTF-8" /path/to/app[/console]
и еще посмотрите в сторону: LC_LOCALE

запустил так и все на английском стало

text
#!/bin/sh
for i in /etc/webalizer/*.conf; do LANG="ru_RU.UTF-8" webalizer -c $i; done

http://stat.plusnet.ks.ua/clan/

07.02.2015 01:13 · отредактировано #413453

Кто сталкивался с таким зверем как libgd ???
т.к. по идее вся лажа из-за нее, но как ее собрать с поддержкой русского язика я так и не понял...
сам webalizer - собирается из исходников с полпинка с поддержкой русского, и все кроме конвертации этой [CENSORED] картинки работает..
А конвертирует оно именно с помощью libgd.
Подкиньте идею как ее собрать адекватно.... Ну или где (в каком дистре) стырить готовую?....

07.02.2015 01:36 #413455
diablopc написал:
Кто сталкивался с таким зверем как libgd ???
т.к. по идее вся лажа из-за нее, но как ее собрать с поддержкой русского язика я так и не понял...
сам webalizer - собирается из исходников с полпинка с поддержкой русского, и все кроме конвертации этой [CENSORED] картинки работает..
А конвертирует оно именно с помощью libgd.
Подкиньте идею как ее собрать адекватно.... Ну или где (в каком дистре) стырить готовую?....

Может это поможет

Кракозябры вместо кириллицы или почему невозможно написать русскими буквами строку текста с помощью ф-ции ImageString
Дело в том, что встроенные шрифты, которыми пользуются эта функция даже не подозревают о существовании кириллицы. Соответственно для вывода надписи буквами кириллицы нужно использовать ф-цию ImageTTFText а также файлы с TTF шрифтами, которые поддерживают кириллицу. Следует учесть два важных момента:
У вас должна быть установлена FreeType library
Строка, которую вы пытаетесь отобразить с помощью этой функции должна быть в Unicode кодировке

оригинал http://www.sql.ru/forum/628273/chavo-ili-o-chem-luchshe-ne-sprashivat

Войдите или зарегистрируйтесь, чтобы ответить.