В apache по умолчанию при включенном модуле генерации листинга директорий используется кодировка ISO-8859-1 или может быть любая другая кроме нужной. Это приводит к тому, что очень неудобно использовать http сервер для навигации по файловой системе сервера, а это очень удобно когда вебсервер работает поверх smb/nfs/ftp сервера -- можно быстро и наглядно давать ссылки на нужные файлы, не нужно ничего кроме браузера, который есть у всех и все умеют им пользоваться!
Чтобы заставить apache выдавать листинг расшаренной директории в правильной кодировке необходимо использовать один из методов
глобальный: добавить опцию Charset=UTF-8 в список параметра IndexOptions модуля autoindex, эта опция находится в файле /etc/apache2/mods-enabled/autoindex.conf
должно получиться вот так:
IndexOptions FancyIndexing VersionSort HTMLTable NameWidth=* DescriptionWidth=* Charset=UTF-8
локальный, то-есть будет действовать только на уровне выбранного виртуального хоста: добавить опцию IndexOptions Charset=UTF-8 в файл опрелеяющий виртуальный хост
будет что-то вроде этого:
< Directory /home/ftp/>
AddDefaultCharset UTF-8
Options FollowSymLinks MultiViews Indexes
IndexOptions Charset=UTF-8
AllowOverride None
Order allow,deny
allow from all
< /Directory >
вот и всё, для проверки запускаем
sudo apache2ctl configtest
и если всё в порядке перезапускаем вебсервер без остановки
sudo apache2ctl graceful
Комментариев 0