апреля 9 2008 09:06 пп

HTTP сервер на BASH

Есть много способов поделится файлами с друзьями, например поднять у себя HTTP сервер, но устанавливать что то желания нет, данный скриптик поможет вам реализовать задуманное за пару секунд. Простой HTTP Сервер написанный на Bash который занимает всего одну строчку…

Код скрипта приведен ниже:
Код:


:;while [ $? -eq 0 ];do nc -vlp 8080 -c'(r=read;e=echo;$r a b c;z=$r;while [ ${#z} -gt 2 ];do $r z;done;f=`$e $b|sed 's/[^a-z0-9_.-]//gi'`;h="HTTP/1.0";o="$h 200 OK\r\n";c="Content";if [ -z $f ];then($e $o;ls|(while $r n;do if [ -f "$n" ]; then $e "<a href=\"/$n\">`ls -gh $n`</a><br>";fi;done););elif [ -f $f ];then $e "$o$c-Type: `file -ib $f`\n$c-Length: `stat -c%s $f`";$e;cat $f;else $e -e "$h 404 Not Found\n\n404\n";fi)';done

После запуска по URL http://ваш_ip:8080/ можно получить доступ ко всем файлам, находящимся в текущим каталоге. Очевидных и прямолинейных способов сменить каталог нет. Протестировано и работает под Linux, bash 3.2.13, и с хоббитовским netcat v1.10 с поддержкой опции -с (запустите netcat -h и посмотрите. Как минимум в Ubuntu, Debian и Fedora Core такая опция есть).

Сайт автора http://alexey.sveshnikov.ru/blog


Popularity: 1%





Комментариев нет »


No Responses to “HTTP сервер на BASH”

  1. Root on 13 Апр 2008 at 18:03 #

    спасибо, полезная штука

  2. Коля on 26 Апр 2008 at 13:54 #

    Интересная статья

    PS Поздравляю Вас с Праздником Пасхи.

  3. Stepanoff on 26 Апр 2008 at 17:49 #

    Спасибо! Вас тоже с праздником =)

Trackback URI | Comments RSS

Leave a Reply

You must be logged in to post a comment.


Самые популярные статьи

  • Установка и настройка DNS сервера bind9 Ubuntu-Debian HOWTO
  • Установка Samba сервера на Ubuntu или Debian за 5 минут
  • Установка почтового сервера Postfix + Dovecot + MYSQL и виртуальных доменов
  • Установка и настройка Open VPN сервера на Debian и Ubuntu
  • Настройка маршрутизации в Ubuntu Linux для начинающих
  • Настройка шлюза в локальной сети, лимитирование скорости (shaper), фаервол (iptables).
  • Удаленное подключение к рабочему столу Linux из Windows с помощью Xming и SSH
  • Установка и настройка DHCP сервера
  • Установка и настройка VSFTPD + MYSQL (Ubuntu & Debian)
  • Настройка ограничения и распределения канала (HTB Shaper)
  • Настройка sudo в Debian GNU/Linux и Ubuntu Linux
  • Mail.ru Агент в Linux
  • Установка и настройка L2TP сервера xl2tpd или l2tpd
  • Установка хостинг панели ISPConfig 3 на Ubuntu 9.04
  • Как установить LDAP сервер и его клиентов. (ldap linux debian & ubuntu auth)
  • Сетевые утилиты онлайн - NSLOOKUP
  • Подробное руководство по настройке wifi соединения с шифрованием разных типов
  • Установка apache2.2.x во FreeBSD 7.0
  • IP телефония в Ubuntu или Debian на базе Asterisk за 15 минут
  • Различия в ядрах Ubuntu Server и Ubuntu Desktop
  • Linux в роли WI-FI точки доступа
  • Игры в Linux
  • Установка Ubuntu на RAID-1 диски
  • Настройка рабочего стола Ubuntu, или как догнать и перегнать Windows!
  • Ставим и настраиваем XEN сервер
  • Установка Nginx, PHP5, FastCGI, XCache и MySQL на Ubuntu
  • Открылся русскоязычный Linux торрент трекер
  • HDR обои на рабочий стол 1920×1200
  • Установка Zend Optimizer на Ubuntu 10.04 LTS
  • Сборка Midnight Commander 4.6.3 на Mac OS Leopard

  • « | »

    Рейтинг блогов Rambler's Top100
    службы мониторинга серверов