CGI приложения на C

Все о программировании под *nix
Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

CGI приложения на C

Сообщение Lioxa »

Появилось желание попробовать написать сайтик на C, скомпилить его.
Начал искать библиотеку для CGI. Естетсвенно спросил у гугла "cgi.h"
Нашёл следующее

CGI.h is a C++ #include file that allows a 'CGI' object to be created then HTML tags generated via methods.

А для С библиотека по другому называется? или так же, но я не нашёл её описания?
Может ктонибуть знает ссылочки на инет или печатные ресурсы по этому вопросу?
И в Апаче нужны ли дополнительные настроки? Я так понимаю, что бинарники должны запускаться как cgi, по аналогии с Perl прогами.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Lioxa, м... это все фантастика на самом деле...
Особых извращений и библиотек не надо. Почитайте про CGI и предеачу параметров - AFAIK параметроы передаются через stdin и черз enviroment. Соотвественно и читать ихттуда можно относительно просто.
PS: А с какого перепугу надо писать сайт на C ???
Опыт растет прямо пропорционально выведенному из строя оборудованию

Berserker
Неотъемлемая часть форума
Сообщения: 279
Зарегистрирован: 23 апр 2005, 21:13
Откуда: minsk

Re: CGI приложения на C

Сообщение Berserker »

ничего дополнительного не надо.
Все данные для обработки берутся скриптом из :
1) переменных окружения. Например, QUERY_STRING, для анализа инфы, поданной методом GET.
2) стандартного входа (aka STDIN) , если юзер использует метод POST.

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Сообщение Lioxa »

Llama писал(а):PS: А с какого перепугу надо писать сайт на C ???


Just for fun :)
Хочется попробовать это дело. просто ради интереса.

Аватара пользователя
Victor Gr.
Неотъемлемая часть форума
Сообщения: 891
Зарегистрирован: 13 авг 2004, 15:39
Откуда: Минск
Контактная информация:

Сообщение Victor Gr. »

Lioxa, у меня есть такое же желание ;) Для него и купил Кернигана-Ритчи "Язык программирования Си" :). Хочется добиться бешеного прироста производительности.

В рассуждениях дошёл до того, что нужно написать собственный HTTP-сервер с заточкой под собственные нужды, интегрировать в него CMS.

http://victorgr.livejournal.com/22817.html

Впрочем, хочется создать собственный framework оптимизированных функций на C, чтобы не возвращаться к ним и сделать программирование сайтов на Си таким же простым, как и на PHP :).
(например, обработка строк, коннекты к БД и др.)

Gnida
Неотъемлемая часть форума
Сообщения: 346
Зарегистрирован: 04 апр 2004, 22:38

Сообщение Gnida »

на асме их , на асме )
С опытом ошибки не изчезают , а умнеют

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Сообщение Lioxa »

Gnida писал(а):на асме их , на асме )


Не факт, что на асме будет лучше работать. Так как большой и сложный код на асме писать сложнее, можно больше ошибок сделать. причём ошибок логических.

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Сообщение Lioxa »

Victor Gr. писал(а):Хочется добиться бешеного прироста производительности.


Бешенного врядли получится. Но, если, как ты хочешь, делать вполть до оптимизации httpd собственного, то в таком случае пожалуй да.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Victor Gr., ИМХО не стоит озобретать велисипед. В тот же самый апач можно вклинится и перехватить обработку запроса практически на любом уровне. ИМХО apache2-mpm-worker достаточно быстр для того чтобы не изобретать велосипед.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
Victor Gr.
Неотъемлемая часть форума
Сообщения: 891
Зарегистрирован: 13 авг 2004, 15:39
Откуда: Минск
Контактная информация:

Сообщение Victor Gr. »

Llama, это моё желание попробовать, сделать, что-то открыть для себя новое :)

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Сообщение Lioxa »

Victor Gr, может ты знаешь есть ли под C библиотека для работы с шаблонами, наподобие перловой HTML::Template. Пока вижу два способа: самому это делать, либо через libxml и libxslt.

Аватара пользователя
sanitar
Неотъемлемая часть форума
Сообщения: 1116
Зарегистрирован: 28 ноя 2002, 02:23
Откуда: Минск

Сообщение sanitar »

Плюнусь ложкой дегтя:

вплетением логики в механизмы представления данных

в 99 % случаев вымощена дорога в ад!
I'll kill this code without a knife -- with only fork().

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Сообщение Lioxa »

Быть праведником скучно. Иногда можно и поэксперементировать с извращениями, в рамках безопасного конечноже ;)

Andrei (admin)
Фанатеющий
Сообщения: 143
Зарегистрирован: 05 мар 2003, 13:27
Контактная информация:

Сообщение Andrei (admin) »

Victor Gr. писал(а):Lioxa, у меня есть такое же желание ;) Для него и купил Кернигана-Ритчи "Язык программирования Си" :). Хочется добиться бешеного прироста производительности.


это врядли. CGI гораздо тормознутее модулей (типа PHP) т.к. при каждом обращении будет вызываться программа. а это жуууутко медленно а масштабах большого сервера

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Хм... если уж извращаться - то по полной
1) Многопточный сервер приложений
2) Коннектор к нему в виде апачевого же модуля обрабатывающего Location
Вот такую связку фиг чем догонишь, если написано с умом... ;)
Строго говоря - mod_php самый худший из возможных способов выполнения php-скриптов с точки зрения безопастности ИМХО.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Ответить