Interested Article - Sambar Server
- 2021-09-06
- 1
Sambar Server — мультипротокольный расширяемый сервер приложений , веб-сервер и мультипротокольный proxy-сервер с программируемым API . Сервер поддерживает виртуальные домены с независимыми папками документов и CGI, логов и шаблонов ошибок. Sambar Server писался под Windows и Linux. Сервер запускался как приложение в Windows 9x, а в Windows NT/2000/XP/2003 может быть установлен в качестве службы. Сервер имеет веб-интерфейс администрирования, а также есть встроенный пользовательский интерфейс, содержащий в себе RSS-ленты, веб-почту, календарь, адресную книгу, фотоальбомы, блоги, чат, форум. Поддержка и развитие проекта прекращены 31 января 2007 года, но сам сервер можно найти и скачать в интернете.
Краткая история
Sambar Server был впервые выпущен в 1996 году.
3 января 2007 Выпущен Sambar Server версии 7.0 Beta 4, в котором были расширены функции XMPP , ejabberd и Google Talk .
Последняя стабильная версия вышла 14 марта 2007 года — Sambar Server 7.0p.
29 декабря 2007 объявил о прекращении поддержки и развития Sambar Server. Официальный сайт просуществовал до 2009 года.
Функции
Web-сервер
Web-сервер Sambar имеет встроенную поддержку динамического контента. Первым встроенным языком программирования был Sambar Server Scripting Language, позже в сервер была добавлена поддержка ASP с использованием языка для программных вставок. Также можно подключать дополнительные языки программирования, например PHP , Perl или Python .
Sambar Server Scripting Language
Встроенный язык программирования Sambar Server, который основан на специальных HTML-тегах, включаемых в HTML-страницу.
Формат спецтега:
<RCcommand param1>
, где
command
— вызываемая функция сервера, а param1 — один из параметров вызываемой функции. Файлы, содержащие исходный текст Sambar Server Scripting Language, имели расширение
*.STM
.
Пример STM-скрипта:
<TABLE cellpadding=5> <FORM METHOD=POST ACTION="results.stm"> <TR><TD align=right><B>Search for: </B></TD> <TD align=left> <INPUT TYPE=hidden NAME="indexname" VALUE="<RC@striphtml(RC$indexname)>"> <INPUT TYPE=hidden NAME="spage" VALUE="0"> <INPUT NAME="query" SIZE=30 VALUE="<RC@txt2html(RC$query)>" MAXLENGTH=40> <INPUT TYPE=image SRC="/sysimage/system/go.gif" height=20 width=20 border=0></TD></TR> </FORM> </TABLE> </CENTER> <P> <RCXfind query=RC$query indexname=RC$indexname fmt=fancy spage=RC$spage maxrows=50 highlight=red>
Active Server Pages
Active Server Pages
— технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования веб-страницы. Язык программирования, на котором пишутся программные модули для ASP сервера Sambar — , аналогичный языку
C
, но имеющий некоторые отличия от него. Заключённые в специальные скобки
<% %>
программные модули на C-Script вставляются в код HTML-страниц. Модули С-Script могут существовать как отдельными *.C-файлами, которые позже будут включены в основные ASP-сценарии, так и в качестве вставок в HTML-код страницы, которая сохраняется под расширением
*.ASP
.
Пример ASP-файла с прямым использованием вставок C-Script
<html> <head> <title>Hello World</title> </head> <body> <% printf("Hello World!"); %> </body> </html>
Пример ASP-файла, использующий включение файлов #include
//hello.c printf("Hello World!");
<!--head.asp--> <head> <title>Hello World</title> </head>
<!--hello.asp--> <html> <%#include "head.asp"%> <body> <% #include "hello.c" %> </body> </html>
Основные отличия CScript от языка Си
Синтаксис
- Не требуется определение функции main()
- Объявление переменных не является обязательным. Чтобы определить переменную, достаточно сразу присвоить ей значение. Если переменная не была определена ранее, то она определится автоматически, в зависимости от её значения
- Поддерживаются обработки прерываний try / throw / catch
- Поддерживается динамическое распределение выделение или перевыделение массива
- Не поддерживается ключ unsigned
- Не поддерживается ключ static
- Не поддерживается определение констант const
- Макросы не поддерживаются
- Метки GOTO не поддерживаются
- Структуры, объединения, перечисления и макросы не поддерживаются.
Операторы
-
Операторы
+
,
<
,
<=
, > ,>=
, == и != можно использовать на строках - Оператор [] выполняет автоматическую проверку диапазона
- Оператор sizeof возвращает количество элементов массива, размер строки или число байт, используемых атомарным значением
- typeof определяет тип объекта
- Арифметика с указателями не поддерживается
Переменные
- Локальные переменные всегда находятся в области действия блока функции. Переменные, используемые внутри составных операторов доступны в их внешней области.
- Все переменные по умолчанию инициализируются нулевым значением
- Массивы автоматически увеличиваемые и могут иметь атрибут «типы» как элементы. Проверки границ массива выполняются всегда
- Ссылки на объекты непрозрачны и используется только при передаче данных из/во внешний API.
Структуры
- Переключатели динамические (могут содержать выражения)
- Заголовочные файлы не поддерживаются. Все основные библиотеки предварительно установлены, поэтому вызовы стандартных функций всегда могут производиться непосредственно. Пользовательские библиотеки функций должны включатся в текст программы, то есть #include <foo.c>
Почтовый Сервер
Sambar Server имеет поддержку почтовых протоколов POP3 / IMAP4 и SMTP . Имеет антиспам-контроль, поддерживаются списки рассылок. Имеется сборщик почты, который собирает почту с других сервисов и распределяет их по почтовым ящикам пользователей. Работает только в PRO-версии. Почтовый сервер имеет веб-интерфейс для проверки почты и отправки писем.
Службы IP-адресов
DHCP
DNS
XMPP/Jabber
FTP
TFTP
Telnet
Telnet-Прокси
Sambar Server
Telnet
может использоваться в качестве прокси, что позволяет обмениваться данными между клиентом и удалённым сервером. Используя Telnet-клиент, пользователи могут подключаться к Sambar Server. и в ответ на приглащение
telnet>
, ввести команду «
connect hostname
» (Где
hostname
— имя сервера Telnet, С которым пользователь хочет соединиться). Telnet прокси — это форма связи между клиентом и удалённым узлом. Следующие команды могут быть использованы на приглашение
telnet>
до подключения к удалённому серверу:
Команда | Описание |
---|---|
help | Вывести таблицу помощи в использовании |
quit | Отключится от сервера telnet Прокси/Сервера |
connect
hostname [port]
|
Подключиться к Telnet-службе сервера hostname . [port] — Указать номер используемого порта службы Telnet удалённого сервера (если порт не указан, то используется порт по умолчанию — порт 23) |
login | Авторизоваться на локальном Telnet-сервере (Необходимы администраторские права) |
Telnet Server
Sambar Server имеет встроенный очень простой сервер Telnet для работы с консольными приложениями. Используя клиент Telnet, пользователи могут авторизоваться на локальном Telnet-сервере, для чего надо ввести команду
login
в ответ на приглашение
telnet>
. После аутентификации с логином и паролем администратора сервера, базовые консольные приложений могут быть выполнены DOS-командой в оболочке. Пример встроенных команд:
-
net start service-name
-
ping hostname
Обратите внимание, что большинство из DOS-команд оболочки, такие как
dir
и
del
не будут работать во встроенном Telnet-сервере Sambar.
Telnet-сервер выполняет команды непосредственно из Sambar Server, команда
cd
не должна выполняться, так как можно повлиять на эффективность серверных операций. Для защиты от злоумышленников, только администратор Sambar Server может авторизоваться в Telnet и только с администраторского
IP-адреса
.
Планировщик
Sambar Server имеет встроенный планировщик, который в указанное время запускает указанный сценарий, запускает фоновую службу, или приводит в действие встроенную функцию сервера. Задачи могут запускаться как один раз, так и в указанный период повторения.
Веб-Интерфейс
Sambar Server имеет встроенный многопользовательский веб-интерфейс, который содержит RSS-ленты, Веб-почту, Контакты, Блог, Календарь, Фотографии, Задачи и Чат, И администраторская консоль, которая содержит инструменты управления всеми службами сервера, включая настройки работы основных протоколов, управление пользователями, настройка заданий планировщика, добавление/удаление сборщиков почты, управление виртуальным хостингом, добавление/удаление пользователей, настройки доступа и т. д. Доступ к администраторской консоли разрешается с указанного IP-адреса , который указывается администратором на специальной странице или в файле конфигурации. А также доступ к пользовательскому интерфейсу также может быть ограничена.
Лицензия
Sambar Server — ПО с закрытым исходным кодом, имел несколько видов лицензий:
Basic
Это бесплатная версия сервера, которая имела ограниченный набор функций по сравнению с версией Pro.
Demo
Trial-версия Sambar Server Pro, в которой доступны все её возможности в течение 30 дней.
Pro
Коммерческая версия сервера, в которой присутствуют дополнительные функции, такие как Почтовый сервер, WebDAV, Диспетчер документов, DNS, SOCKs, IRC, службы трафика и другие усовершенствованные функции.
Enterprise
Коммерческая версия сервера, ориентированная на предприятия. Не для частных покупателей.
Примечания
См. также
Ссылки
- 2021-09-06
- 1