LINUX.ORG.RU

веб-сервер на C

 , , ,


0

3

Хочется написать сервис с авторизацией, который будет брать из БД (mysql) немного данных (текст) и показывать в броузере. заносить в БД будет серверное приложение (тема не этого треда). Есть одно НО. я не знаю PHP, и не собираюсь его учить. Но я знаю (более-менее) С, и когда то даже пытался писать cgi-скрипты, выдающие статичные странички на простом html. Нашел небольшую статью на швабре. Есть даже целая библиотека FAST CGI. Но, кажется, к ней нет документации вообще. Соответственно, насоветуйте годных реализаций CGI на С/С++.

★★

Последнее исправление: Andersen (всего исправлений: 1)

Есть одно НО. я не знаю PHP, и не собираюсь его учить

ССЗБ

devl547 ★★★★★
()
Последнее исправление: devl547 (всего исправлений: 1)

Ссылочка на швабр побилась.

P.S. Немного не в тему, но... Не так давно попробовал потыкать серверную жабу и томкат - остались очень приятные впечатления. Если есть хороший C++ бекграунд, то разобраться с Java - 8-16 часов до получения первых хороших результатов и +1 язык в запасе. Рекомендую.

trex6 ★★★★★
()

не поленись и выучи более подходящий под задачу ЯП, если тебе конечно не надо бороться за каждый такт

wota ★★
()

я не знаю PHP, и не собираюсь его учить

Для твоей задачи его даже не надо учить. Хватит пары запросов в поисковик.

eth1
()
Ответ на: комментарий от wota

нет, скорее всего я буду единственным пользуном. правда, данных будет (скорее всего) очень много. Я все же полагаю, что нужен С, т.к. помимо браузера в БД будут заносить данные клиенты, написанные на С.

Andersen ★★
() автор топика

Эта задача не для Си.

yoghurt ★★★★★
()
Ответ на: комментарий от Andersen

нет, скорее всего я буду единственным пользуном. правда, данных будет (скорее всего) очень много. Я все же полагаю, что нужен С

тогда посмотри на библиотеки вроде lighttpd или mongoose, может так тебе будет удобнее

wota ★★
()

если знаешь си и любишь, то наверное полезно будет ознакомиться с pecl-расширениями - может понравится или найдешь что-то стоящее или напишешь свое. Вообще в последних версиях есть встроенный сервер для разработки, экспериментов.

Но вообще странно, знаю Си, но не знаю php - он си-подобный синтаксис представляет и гораздо легче.

Главние моменты: свежие версии, проверка ошибок (выдача, строгий уровень сообщений об ошибках), соглашения о стандартах кодирования (http://www.php-fig.org), spl_autoload (вообще по возможности использовать). Почитай сайтик best practices.

swwwfactory ★★
()

неплохие веб-сервера есть не только на си с богатыми возможностями.

swwwfactory ★★
()

Дофига готовых библиотек, я же свой велосипед использую. Там все равно все элементарно делается.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Andersen

премного благодарен

Очень рад, что тебе подошел этот тулкит.

MikeDM ★★★★★
()

Есть одно НО. я не знаю PHP, и не собираюсь его учить.

Это правильно.

Но я знаю (более-менее) С, и когда то даже пытался писать cgi-скрипты

А это — нет. C — отличный язык для очень низкоуровневого программирования. Для HTTP нужно что-то повыше.

Miguel ★★★★★
()

Если ты не можешь с лету написать это на Си, то ты недостаточно знаешь Си и лучше напиши это на php, быстрее будет и надежнее.

Tark ★★
()
Ответ на: комментарий от Tark

ну, предположим я знаю си: надо открыть сокет на 80 порту и распарсить http-запрос... но да, с лёту я это не напишу.. гемор-гемор-гемор.. проще поискать готовую либу (что человек и делает). а ещё проще взять php...

AndreyKl ★★★★★
()

Язабан же, ну. Опять люди путают сишечку и кресты.

buddhist ★★★★★
()

И получишь глюкодром. Я тоже не очень дружу с пыхом, но у меня в багаже великий и ужасный перл, который годится для всего на свете.

chg ★★★★★
()

Тем временем, запилил часть, отвечающую за работу с БД. Кого попало, соответственно, в БД пускать не хочется. Нужна авторизация. Первой мыслью была реализация авторизации силами апача (читай - htaccess и htpasswd). набрал пароль, зашел, все ок. Пока basic auth, но, можно, я так думаю, прикрутить digest. Как бы вы поступили на моем месте? Была мысль-завести переменную в окружении апача, которая отвечает за хранение логина:пароля. но, это как то сильно заморочено

Andersen ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.