Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Посоветуйте индексатор для папок на сервере.

2.1K
15 ноября 2005 года
ksicom
38 / / 11.09.2003
Есть публичный FTP сервер.
Надо сделать, чтобы доступ был не только по ftp но и по http. (что-нибудь вроде такого, как на linuxcenter.ru)

Самому писать ломает, хотя наверное самое простое :)

Посоветуйте какой-нибудь простенький готовый продукт. Чтобы запускать его раз в день в cronе, и он индексировал папку со всеми вложенными папками и выдавал ссылку, выводил размер, дату создания и т. д.

Сервер на линуксе.
4
16 ноября 2005 года
mike
3.7K / / 01.10.2002
А может сделать real-time wrapper, например с помощью FTP функций на PHP?
2.1K
18 ноября 2005 года
ksicom
38 / / 11.09.2003
Ну собственно вот такой скрипт получился.
Код:
#!/bin/sh
# Начальный каталог
START_DIR="/var/www/pub"
cd $START_DIR
# Ищем все подкаталоги (и рекурсивно тоже)
find . -type d -print > .tmp.alldirs
# Пока есть необойдённый каталог
while read CURDIR
  do
# Переходим в него
    cd "$CURDIR"
# Убираем точку и следж
    HTMLDIR='/'`echo $CURDIR | cut -c3-`
# Получаем все подкаталоги в текущем каталоге
    ls -lQ|grep "^d"|cut -d\" -f2|sort > .tmp.dirs
# Получаем все обычные файлы в текущем каталоге
    ls -lQ|grep "^-"|cut -d\" -f2|sort > .tmp.files

    echo '<html>' > .public_index.html

# Ссылка на предыдущий каталог
    if [ "$HTMLDIR" != "/" ];
      then
        HTMLFILE=`echo "$HTMLDIR/../.public_index.html"|tr -s "/"`
        echo '[url="'$HTMLFILE'"]..[/url]
' >> .public_index.html;
    fi  

# Обрабатываем все подкаталоги в текущем каталоге
    while read CURFILE
      do
        HTMLFILE=`echo "$HTMLDIR/$CURFILE/.public_index.html"|tr -s "/"`
        echo '[url="'$HTMLFILE'"]'$CURFILE'[/url]
' >> .public_index.html;
      done < .tmp.dirs

# Обрабатываем все файлы в текущем каталоге
    while read CURFILE
      do
        HTMLFILE=`echo "$HTMLDIR/$CURFILE"|tr -s "/"`
        echo '[url="'$HTMLFILE'"]'$CURFILE'[/url]
' >> .public_index.html;
      done < .tmp.files
    echo '</html>' >> .public_index.html
    rm -f .tmp.dirs
    rm -f .tmp.files

# Возвращаемся к отправной точке
    cd "$START_DIR"
  done < .tmp.alldirs
rm -f .tmp.alldirs
exit 0;

Найти готового нормального не удалось. Одна прога с папками больше 1000 файлов не работает, другая русский язык через пень-колоду воспринимает, в общем проще самому оказалось написать :)
2.1K
20 ноября 2005 года
ksicom
38 / / 11.09.2003
Возникла проблема.
На сервере конечно жк полно папок и файлов с русскими именами.
В Firefox ссылки вида:
http://1.2.3.4/Music/Русская/.public_index.html
работают нормально, а вот в IE не работают :(
Как я понял, дело в том, что русские символы в ссылке.
Что делать? На сервере переименовывать папки нельзя.
15
21 ноября 2005 года
shaelf
2.7K / / 04.05.2005
Цитата:
Originally posted by ksicom
Возникла проблема.
На сервере конечно жк полно папок и файлов с русскими именами.
В Firefox ссылки вида:
http://1.2.3.4/Music/Русская/.public_index.html
работают нормально, а вот в IE не работают :(
Как я понял, дело в том, что русские символы в ссылке.
Что делать? На сервере переименовывать папки нельзя.


urlencode(), urldecode()

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог