Рад представить вам описание Nitrode.
Node.Js не включает в себя модуль FastCGI или аналогичные модули для интеграции приложений, в отличие от других HTTP-серверов, например, nginx.
Nitrode призван устранить этот пробел, предоставляя быстрый и универсальный HTTP-сервер, построенный на основе Node.JS. Он рассчитан на поддержку большинства основных возможностей nginx, но обладает дополнительным преимуществом, так как Nitrode написан на JavaScript и предоставляет API для существующих приложений, который позволяет осуществлять им полный контроль над сервером, не выходя из текущего процесса.
Вы можете найти репозиторий здесь: github.com/ollym/nitrode
Я включил в него пример example.js, который будет использовать все текущие возможности Nitrode, среди которых:
В отличие от Connect, Nitrode стремится быть строго HTTP-сервером, и фокусируется целиком на этом направлении.
Чтобы запустить пример:
Убедитесь также, что example.js весьма легко читаем!
Nitrode очень молод, я начал его разработку только на прошлой неделе или около того. Есть целый ряд вещей, которые мне еще предстоит сделать:
Если кто-то заинтересован, чтобы помочь мне с этими задачами, то пожалуйста, присоединяйтесь!
С уважением,
Olly
P.S.: от переводчика: только что вышел Node.JS 0.2.0, и автор обещает, что в этой ветке API меняться не будет.
P.P.S.: автор за время от анонса Nitrode до сего дня выпустил уже несколько новых версий, многое уже сделано.
Проблема:
Node.Js не включает в себя модуль FastCGI или аналогичные модули для интеграции приложений, в отличие от других HTTP-серверов, например, nginx.
Решение
Nitrode призван устранить этот пробел, предоставляя быстрый и универсальный HTTP-сервер, построенный на основе Node.JS. Он рассчитан на поддержку большинства основных возможностей nginx, но обладает дополнительным преимуществом, так как Nitrode написан на JavaScript и предоставляет API для существующих приложений, который позволяет осуществлять им полный контроль над сервером, не выходя из текущего процесса.
Великолепно! Как я могу его использовать?
Вы можете найти репозиторий здесь: github.com/ollym/nitrode
Я включил в него пример example.js, который будет использовать все текущие возможности Nitrode, среди которых:
- Базовая HTTP-аутентификация;
- поддержка ETag и If-Modified-Since;
- Поддержка публичных каталогов и обслуживание статических файлов;
- Поддержка SSL;
- Возможность настройки от А до Я;
- Поддержка виртуальных хостов;
- поддержка url rewrite;
- И многое другое…
В отличие от Connect, Nitrode стремится быть строго HTTP-сервером, и фокусируется целиком на этом направлении.
Чтобы запустить пример:
- Клонируйте исходный репозиторий;
- Перейдите в каталог репозитория;
- Выполните следующую команду: «sudo node example.js»;
- Откройте браузер и введите: «localhost:80»;
- Проверьте аутентификацию, используя имя пользователя: «admin», пароль: «admin»;
- Теперь вы должны увидеть страницу под названием: «Welcome to Nitrode!».
Убедитесь также, что example.js весьма легко читаем!
Что дальше?
Nitrode очень молод, я начал его разработку только на прошлой неделе или около того. Есть целый ряд вещей, которые мне еще предстоит сделать:
- Разбить index.js на более мелкие библиотеки;
- Добавить поддержку дайджест-аутентификации;
- Добавить поддержку сертификатов подлинности SSL;
- Написать модульные тесты;
- Улучшить производительность sys.pump;
- Написать тесты производительности;
- Написать документацию;
Если кто-то заинтересован, чтобы помочь мне с этими задачами, то пожалуйста, присоединяйтесь!
С уважением,
Olly
P.S.: от переводчика: только что вышел Node.JS 0.2.0, и автор обещает, что в этой ветке API меняться не будет.
P.P.S.: автор за время от анонса Nitrode до сего дня выпустил уже несколько новых версий, многое уже сделано.