Osfonder's blog Just another wd weblog

17Апр/100

Внешний вид mod_autoindex или организация FTP

У вас есть сервер, который вы используете(в том числе) для хранения файлов и доступа к ним из любого места через интернет-браузер, а файлы, скорее всего, заливаете по FTP.
Если да, то скорее всего вам знакома такая картина

А нет, извините, вам знакома такая


Это стандартная выдача mod_autoindex сервера apache.

Но предлагаю немного упростить себе жизнь и превратить
её в такую.

Да и вообще в онлайн плеер.

Можно это сделать, установив по умолчанию индексным файлом, например, php скрипт, который и будет делать всю черную работу. Есть проект на sourceforge посвященный этому(autoindex).

Но использовать лишнее звено в виде php нет смысла, если есть возможность воспользоваться стандартными функциями или хотя бы просто добавить javascript файл в выдачу. И такая возможность есть.

Большую часть работы по этому уже проделана. Результат её здесь.

Доработанную её версию вам и предлагаю.

Загрузка

Скачать

Нужно просто распаковать архив в корень вашего ФТП хранилища.

Возможности

  1. Сортировка по имени, дате модификации, размеру, типу
  2. Предпросмотр фотографий и изображений
  3. Онлайн прослушивание mp3 файлов

Ну и приглядный внешний вид с иконками.

Техническая сторона

Ну и на последок немного технической информации.

  1. Предпросмотр изображений выполнен с помощью YUI Tooltip
  2. Проигрыватель музыкальных файлов Yahoo! Media Player
  3. JavaScript'ы и устанавливаются в обрамляющих выдачу файлах(см. .htaccess ниже)

P.S. Музыка на скриншоте моих друзей Waterplea, пишущих большей частью ambient.

#Файлы, вставляемые до и после выдачи(в них и крепяться стили и javascript'ы)
HeaderName /indexoverride/HEADER.html
ReadmeName /indexoverride/FOOTER.html
#Запрещаем в выдаче ненужные и системные файлы
IndexIgnore .htaccess indexoverride Thumbs.db .??* *~ *# RCS CVS *,v *,t

#Соритировка по умолчанию
IndexOrderDefault Ascending Description

#Настроки структуры выдачи
IndexOptions FancyIndexing FoldersFirst IconsAreLinks NameWidth=* IconWidth=32 IconHeight=32

#Кодировка по умолчанию
IndexOptions Charset=UTF-8

#Иконки и описания по расширениям файлов
AddIcon (IMG,/indexoverride/image.png) .jpg .JPG .png .PNG .bmp .BMP .svg .SVG .gif .GIF .wmf .WMF .psd .PSD
AddDescription "image / PNG" 		*.png *.PNG
AddDescription "image / JPG" 		*.jpg *.JPG
AddDescription "image / BMP" 		*.bmp *.BMP
AddDescription "image / SVG" 		*.svg *.SVG
AddDescription "image / GIF" 		*.gif *.GIF
AddDescription "image / WMF" 		*.wmf *.WMF
AddDescription "image / PSD" 		*.psd *.PSD

AddIcon (AUDIO,/indexoverride/audio.png) .mp3 .MP3 .wav .WAV .ogg .OGG
AddDescription "audio / MP3" 		*.mp3 *.MP3
AddDescription "audio / OGG" 		*.ogg *.OGG

AddIcon (VIDEO,/indexoverride/video.png) .mov .MOV .avi .AVI .mpg .MPG
AddDescription "video / QuickTime" 	*.mov *.MOV
AddDescription "image / AVI" 		*.avi *.AVI
AddDescription "image / MPEG" 		*.mpg *.MPG

AddIcon (FLA,/indexoverride/flash_src.png) .fla .FLA .as .AS
AddDescription "flash / FLA" 		*.fla *.FLA
AddDescription "flash / AS" 		*.as  *.AS

AddIcon (SWF,/indexoverride/swf.png) .swf .SWF
AddDescription "flash / SWF" 		*.swf *.SWF

AddIcon (TXT,/indexoverride/text.png) .txt .TXT
AddDescription "document / TXT" 	*.txt *.TXT

AddIcon (XLS,/indexoverride/xls.png) .xls .XLS .csv .CSV
AddDescription "document / XLS" 	*.xls *.XLS
AddDescription "document / CSV" 	*.csv *.CSV

AddIcon (DOC,/indexoverride/doc.png) .doc .DOC
AddDescription "document / DOC" *.doc *.DOC

AddIcon (PPT,/indexoverride/ppt.png) .ppt .PPT
AddDescription "document / PPT" *.ppt *.PPT

AddIcon (PHP,/indexoverride/php.png) .php .PHP
AddDescription "PHP" *.php *.PHP

AddIcon (HTM,/indexoverride/html.png) .htm .html .HTM .HTML
AddDescription "HTML" *.htm* *.HTM*

AddIcon (HTM,/indexoverride/css.png) .css .CSS
AddDescription "CSS" *.css *.CSS

AddIcon (ARCHIVE,/indexoverride/archive.png) .zip .rar .arj .arc .tar .targz .gz .Z
AddDescription "Archive / ZIP" *.zip *.ZIP
AddDescription "Archive / RAR" *.rar *.RAR
AddDescription "Archive / ARJ" *.arj *.ARJ
AddDescription "Archive / ARC" *.arc *.ARC
AddDescription "Archive / TAR" *.tar *.TAR
AddDescription "Archive / GZ" *.gz *.GZ
AddDescription "Archive / TARGZ" *.targz *.TARGZ
AddDescription "Archive / compress" *.Z

#Иконка для родительской дирректории
AddIcon (PAR,/indexoverride/dir.png) ..

#Иконка по умолчанию
DefaultIcon /indexoverride/default.png

#Иконки по типам
AddIconByType (TXT,/indexoverride/text.png) text/*
AddIconByType (IMG,/indexoverride/image.png) image/*
AddIconByType (VID,/indexoverride/video.png) video/*
AddIconByEncoding (CMP,/indexoverride/archive.png) x-compress x-gzip
Комментарии (0) Пинги (0)

Пока нет комментариев.


Оставить комментарий


Нет обратных ссылок на эту запись.