NetSago
Вход
Войти

Как присоединиться?
Меню
Главная
События
 Заметки
Статьи
Теги
Поиск
О Проекте
Ссылки
Наше
RSS События по RSS
RSS Заметки по RSS
netsago NetSago
Популярное
Руководство по получению прибыли от Свободных и Открытых Проектов by Джон Эндрюс

Восстановление удаленных текстовых файлов в ФС ext3 by scamelscrud

Заметки — KLone: фреймворк для веб-программирования на C
Назад в Заметки

KLone: фреймворк для веб-программирования на C
n0xi0uzz



Теги: cpp web-development



Перевод статьи Kari Pahula «KLone: C web programming framework».

PHP хорошо известен благодаря своему синтаксису, смешивающему HTML с исходным кодом внутри специальных тегов. Существует множество инструментов и фреймворком для этого типа веб-разработки при помощи других языков программирования, как Perl и Python, но есть и неожиданный выбор языка, который вы можете использовать — C.

KLone — это фреймворк для разработки веб-приложений, который берет HTML со встроенным C и делает один бинарный файл, совмещающий сервер и веб-приложение в одном пакете.

Давайте рассмотрим пример того, как сделать простое веб-приложение типа Hello World. Прежде всего, apt-get install klone-package. Это установит KLone и некоторые инструменты, которые вы сможете использовать в среде Debian. Перейдите в директорию, в которой у вас есть права записи
$ make-klone-project create -p myhello
$ cd myhello-0.1

В директории проекта будет набор файлов и директорий. Важной из них является debian/, где у вас будут необходимые файлы для генерирования пакетов Debian, содержащих ваше веб-приложение. Мы вернемся к этому позже. А сейчас, давайте сконцентрируемся на интересующей нас директории, userdata/.
$ cd userdata
$ mkdir etc
$ cd etc

Создайте и отредактируйте файл под названием kloned.conf
server_list my_http
allow_root yes
my_http
{
    type      http
    addr.type IPv4
    addr.port 8880
    dir_root  /www
}

Теперь мы готовы к действиям!
$ cd ..
$ mkdir www

        

$ cd www

Создайте и отредактируйте файл под названием index.k11. Любой файл, заканчивающийся расширением .k11 будет восприниматься как файл HTML/C.
<%!
#include <time.h>
time_t now;
%>
<html>
<head><title>A hello world app for debaday</title></head>>
<body>
<h1>Hello World</h1>
<p><%
now = time(0);
io_printf(out, "Time is now %sn", ctime(&now));
%>
</body>
</html>

Вот и все, что надо сделать. А теперь, вернитесь к корневой директории проекта и соберите сервер kloned, просто выполнив:
$ kloned-build -o myapp userdata
$ ./myapp -F

Ключ -F здесь указан, чтобы сервер не запускался как демон. Теперь вы можете получить доступ к http://localhost:8880/ с помощью вашего браузера, чтобы увидеть дружественное приветствие и узнать текущее время. Но это ещё не все. Остановите веб-приложение, которое вы только что создали, выполните apt-get install dpkg-dev, а затем сделайте следующее:
$ dpkg-buildpackage -rfakeroot
$ sudo dpkg -i ../myhello_0.1*deb

Только что вы установили пакет Debian, содержащий ваше веб-приложение. Пока установлен пакет, ваше веб-приложение будет запускаться при загрузке системы.

Если вы хотите увидеть больше примеров того, как использовать KLone, посетите страницы KoanLogic.

KLone доступен в Debian, начиная с Etch и в Ubuntu, начиная с Edgy.
Язык
English/Английский
Поиск
Расширенный Поиск
Ошиблись?
Если вы обнаружили ошибку на сайте, пожалуйста, сообщите нам о ней.
Посчитали
10 / 572
К нам сегодня зашли 50 роботов. Они хотят убить всех человеков.

Зарегистрированных пользователей: 0
Онлайн: 0

Время генерации: 0.010 с
NetSago.v2.β © [2006;∞)  Neunica