Страница 1 из 1
MapServer и русские имена файлов и атрибутов.
Добавлено: 18 май 2011, 17:07
Tokha
Установлен mapserver 5.6.6 на WINDOWS.
Проблема в том, что mapserver не находит файлы с русскими именами, которые указаны в MAP-файле.
Также не видит поля на русском языке в таблицах MapInfo.
С отображением LABEL на русском проблем нет, если что. (CP1251)
Ясно, что где-то надо указать кодировку. Но ничего не нашел, ни в документации, ни в поиске.
Временно решил проблему переводом имен в транслит, но это не вариант, т.к. карты MapInfo делаю не я и они будут меняться.
Направьте на путь истинный, пожалуйста!

Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 19 май 2011, 17:53
Tokha
Я некорректно вопрос задал или у всех имена полей и файлов по-нормальному сделаны, без использования русских букв?
Обновился до mapserver 6. Все красивенько, но с доступом к объектам тоже самое, естественно.
Должен же быть какой-то выход?
Частный случай проблемы:
В map-файле, если писать
, то ругается на имя
"Название".
А если в слоях MapInfo вместо
"Название" сделать, например
"Name" и
в map-файле написать
, то все прекрасно работает.
Можно пройтись по всем слоям Mapinfo и переименовать поля, но слоев очень много и это не наш метод. Хочется в причине разобраться.
Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 19 май 2011, 21:48
Максим Дубинин
ENCODING пробовали?
http://mapserver.org/mapfile/labelencod ... elencoding
+ поиск по форуму по ENCODING явно должен дать наводки. Хотя с именами полей не уверен.
Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 19 май 2011, 22:19
Tokha
Максим Дубинин писал(а):ENCODING пробовали?
Да, конечно! Без этого не отображаются русские символы.
И шрифты поменял, естественно.
Но это, к сожалению, не влияет на доступ к объектам с русскими именами. По слову ENCODING сразу и начал поиск, но ничего не нашел. Что-то помнится, когда искал информацию не связанную с кодировками, случайно промелькнул англоязычный форум на котором была похожая проблема и там предлагалось перекомпилировать mapserver с поддержкой нужной кодировки. Поскольку, тогда мне это было не нужно, то читать тему не стал. Хотя, возможно, там о другом речь шла.
Вопрос открыт...
Хм, вот сейчас вспомнил, что когда экспериментировал с GetFutureInfo из OpenLayers, то информация от mapserver тоже поступала в неправильной кодировке, хотя должна быть в 1251, но тогда это было не важно и не заострил внимания на этом вопросе. Завтра попробую повторить.
Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 20 май 2011, 23:19
Mavka
Единственное что проверил - ESRI Shapefile с русским именем файла работает нормально (названия полей dbf не позволяет создать на русском).
Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 01 июн 2011, 10:21
Tokha
Частично разобрался.
1. Русские имена файлов так и не видит. Все перепробовал, что в голову пришло. Даже map-файл в разных кодировках сохранял. Но это ладно, файлы переименовать транслитом не сложно.
2. Зато решил вопрос с русскими названиями полей. Банальная невнимательность

. Оказалось, что важен регистр букв. Все просто.
3. С ответом GetFutureInfo тоже проблем не возникло. Вот так:
Код: Выделить всё
WEB
.....
METADATA
.....
wms_encoding CP1251
END
PS А вот с шестой версией mapserver пришлось опять спрыгнуть на пятую

, т.к. возникла проблема с плагином msplugin_mssql2008.dll. Не хочет загружаться. Из-за MSVCP90.dll, видимо. И обновления разные ставил и Visual C++ поставил, ничего не помогает.
Re: MapServer и русские имена файлов и атрибутов.
Добавлено: 01 июн 2011, 18:31
Mavka
Можно еще создать жесткие ссылки на файлы на уровне файловой системы
Получится файл с русским именем и его представитель с английской фамилией