Назад Наверх
Урал

HTTP хаб Урал

Обоснование

Сегодня популярным является использование концепции мультипротокольного сервера. Эта концепция появилась во времена первой волны распространения сети Интернет. В результате объединения многих протоколов и технологий в одном продукте, будь-то сервер или браузер, программы разрослись до сверхсложных проектов. Это понизило их гибкость, простоту настройки, эксплуатации, а также безопасность.

Концепция

- главное назначение: создание простого персонального Интернет-севера на персональном устройстве "из коробки";
- использование системы безопасности POSIX операционных систем;
- обслуживание разных разделов и разных функций с разными правами.

Техническое задание:

- менее 1000 строк кода в первой реализации;
- поддержка 10 основных форматов файлов (html,svg,css,jpeg,png,gif,mp3,mp4,ogv,webm);
- поддержка передачи файлов и выполнение скриптов, исполняемых файлов;
- ненужно запускать от имени администратора;
- интеграция в операционную систему.

Текущее состояние:

- примерно 624 строки кода.
- Пункты технического задания, кроме последнего, по причине его риторической формулировки, выполнены полностью.
- Добавлено ведение протокола запросов и основных ошибок.
- Подерживаются заголовки для 16 типов файлов.
- Добавлены примеры кода в папки usr/cgi-bin/ (компилировать g++) и usr/html/
- Исправлены ошибки.

Загрузка:

Только POSIX!

Скачать Урал 0.2 8,5 kb. (28.12.2015 15:10).

Скачать Урал 0.1 8kb. (07.04.2015 19:19).

TODO:

- написать пояснения как из консоли использовать MySQL c перехватом стандартных потоков ввода и вывода процесса потомка;
- режима кеширующего сервера для раздачи статических ресурсов;
- режим распределения http запросов;
- шифрование канала с помощью openssl;
- поддержка докачки.