slavayo777 0 12 мая, 2010 Опубликовано 12 мая, 2010 · Жалоба Как сделать примитивный web-интерфейс на процессоре под управлением Linux? есть веб-сервер боа... Но на нем пока получается только обычные html-страницы вешать... Хочется через вебинтерфейс управлять приложениями, модулями... Где вообще искать? Есть ли какие нить примеры, как через веб-интерфейс передавать параметры запущенным программам на железке, ну или хотябы запустить программу с параметрами? через html даж параметры передать не могу... href="./root/app1 -c2 -a3" говорит нет такого файла, без параметров href="./root/app1" вродь запускается... как передать выход программы обратно в браузер, а не в терминал, тож непонятно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Savrik 0 12 мая, 2010 Опубликовано 12 мая, 2010 · Жалоба хмм.. не проще для запуска-управления использовать телнет? и с защитой проще будет, и велосипед изобретать не надо.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DRUID3 0 12 мая, 2010 Опубликовано 12 мая, 2010 · Жалоба Здравствуйте... Жжоте... По моему только ленивый(как я ;) ) программист еще не написал микросервер с поддержкой CGI. В интернете их хоть кушай одним местом... Я думал все знают :laughing: ... Почему вдруг Boa? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
no_d@t@ 0 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба Как сделать примитивный web-интерфейс на процессоре под управлением Linux? Тема интересная и нужная. Управление и настройка через web-интерфейс - к этому все идет (или уже пришло :)) Сам пытался разобраться где-то полгода назад, не закончил - отвлекли. использовал не boa, а thttpd, да не суть.. Есть ли какие нить примеры, как через веб-интерфейс передавать параметры запущенным программам на железке Использовал qDecoder, у них на сайте все подробно расписано, с примерами. http://www.qdecoder.org/releases/current/examples/ В кратце: рисуется страница с полями для ввода/отображения и кнопки. На кнопки вешаются cgi скрипты, которые получают/передают данные в/из браузера. как передать выход программы обратно в браузер, а не в терминал, тож непонятно... Пример. Есть html страница с кнопкой, при нажатии на кнопку запускается cgi скрипт, код которого ниже. (т.е. выводится некий текст - выход программы обратно в браузер) #define LOG_FILE_NAME "/var/log/messages" FILE *pFDLogFile = NULL; char cBuf[sTR_MAX_LEN+1]; int main() { printf("Content-Type: text/html\n\n"); printf("<html>"); printf("<head>"); printf("<title>Log File</title>"); printf("</head>"); printf("<body bgcolor = \"white\">"); pFDLogFile = fopen(LOG_FILE_NAME, "r"); if(pFDLogFile == NULL) { printf("<h1><b>Error!</h1></b>"); printf("<br>"); printf("<b>Log file is not found!</b>"); } else { int file_end = 0, error = 0; while ((file_end != 1) && (error != 1)) { if (fgets(cBuf, STR_MAX_LEN, pFDLogFile) == NULL) file_end = 1; else { printf(cBuf); printf("<br>"); } } fclose(pFDLogFile); } printf("</body>"); printf("</html>"); return (0); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slavayo777 0 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба хмм.. не проще для запуска-управления использовать телнет? и с защитой проще будет, и велосипед изобретать не надо.. Ну вообще-т не проще... Да и веб-интерфейс гораздо приятней, понятней пользователю и легче настраивается(воткнул, открыл браузер, набрал айпи). Не зря же большинство железок (роутеры, свичи, модемы...) в основном настраиваются через него. По моему только ленивый(как я ) программист еще не написал микросервер с поддержкой CGI. В интернете их хоть кушай одним местом... Я думал все знают ... Почему вдруг Boa? Ну вот я первый кто только седня услышал о CGI :) Боа - потому что он уже предустановлен на ките и работает... Проблема в том что боа, кажись не умеет cgi на C писать, только shell-скрипты :( Сам пытался разобраться где-то полгода назад, не закончил - отвлекли. использовал не boa, а thttpd, да не суть.. Значит мне нужен thtpd раз на Си можно скрипты делать... Я вродь тоже самое на shell ща делаю... светики зажигаю через Оперу :) Думаю у Си возможностей поболее будет... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 29 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба Ну вот я первый кто только седня услышал о CGI :) Боа - потому что он уже предустановлен на ките и работает... Проблема в том что боа, кажись не умеет cgi на C писать, только shell-скрипты :( CGI - это спецификация, там можно хоть на чём писать, фактически запускается консольная программа, у которой входной и выходной поток завёрнут на http (это я так понимаю) На чём написана программа - ваше личное дело. http://ru.wikipedia.org/wiki/CGI Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DRUID3 0 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба Ну вообще-т не проще... Да и веб-интерфейс гораздо приятней, понятней пользователю и легче настраивается(воткнул, открыл браузер, набрал айпи). Не зря же большинство железок (роутеры, свичи, модемы...) в основном настраиваются через него. +1024, совершенно верно! Ну вот я первый кто только седня услышал о CGI :) Шо такэ цэ ЦэГыИи... ... фактически запускается консольная программа, у которой входной и выходной поток завёрнут на http (это я так понимаю) вобщем и целом - да, верно... Боа - потому что он уже предустановлен на ките и работает... Проблема в том что боа, кажись не умеет cgi на C писать, только shell-скрипты :( Не проверял, но это вряд-ли... Если поддерживает хоть один вид скриптов - то и C тоже. Значит мне нужен thtpd раз на Си можно скрипты делать... Я вродь тоже самое на shell ща делаю... Нет, Вам нужен микросервер строчек эдак из 500. С поддержкой CGI. Таких много. В самые простенькие легко вникнуть. Вот этот рекомендую отдельно - его писал русскоязычный программист и если что-то пойдет не так можно будет обратиться на родном матерном... Думаю у Си возможностей поболее будет... В C ничего принципиально иного не будет кроме скорости работы. И если у Вас ARM 200 MHz, то конечно лучше C чем bash, perl, ruby или python. Если высоки требования к безопасности - например общая подсеть с юными прыщавыми хакерами у которых дофига времени и энергии - то тоже лучше написать свой простейший интерпретатор который будет лежать в виде бинарнеГов, со своей запутанной системой команд . + еще лабуда... Вдруг пригодиЦЦо... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Idle 0 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба смотрите haserl сервер - busybox httpd Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 13 мая, 2010 Опубликовано 13 мая, 2010 · Жалоба Полноценная система это конечно: http://www.webmin.com/ Для cgi на С можно воспользоваться cgic - сильно упрощает задачу, все задокументировано и понятно: http://www.boutell.com/cgic/ Также в инете видел кучу примеров cgi на шеллах, для роутеров помоему даже отдельные проекты есть для настройки через вебморду. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slavayo777 0 14 мая, 2010 Опубликовано 14 мая, 2010 · Жалоба Ух как оперативно сработали, закидали инфой полезной!! Спасибо всем отписавшимся, думаю многим данный топик пригодится! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dch 0 15 мая, 2010 Опубликовано 15 мая, 2010 · Жалоба есть веб-сервер боа... это Вам его надо качнуть с сайта производителя, у негоже скрипты должны быть. Скорее CGI может быть он и PHP поддерживает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 29 18 мая, 2010 Опубликовано 18 мая, 2010 · Жалоба http://www.ru-board.com/new/article.php?sid=50 http://www.ru-board.com/new/article.php?sid=49 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Quasar 20 8 июня, 2010 Опубликовано 8 июня, 2010 · Жалоба http://www.ru-board.com/new/article.php?sid=50 http://www.ru-board.com/new/article.php?sid=49 Для начинающих конечно сойдет, но поскольку сейчас 21 первый век, то лучше html странички делать статическими, а cgi-скрипты должны обмениваться с браузером xml или JSON данными в фоновом режиме (AJAX). Реализуя AJAX можно получить действительно неплохой результат и полноценный интерфейс пользователя для устройства, в браузере. Что самое главное, что AJAX решение в принципе более правильное и простое, так железка динамично формирует только коротки xml файлы (или JSON они еще короче), а не парсит все выдаваемые страницы, в поисках мест куда поставить динамические данные. Единственный минус, это то что надо знать JavaScript. :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 29 8 июня, 2010 Опубликовано 8 июня, 2010 · Жалоба Единственный минус, это то что надо знать JavaScript. :( Который у каждого браузера свой, как и DOM Всё-таки для простых интерфейсов (типа страницы настроек) наверно проще статическую табличку сгенерить с парой кнопочек внизу (как впрочем все и делают) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Quasar 20 8 июня, 2010 Опубликовано 8 июня, 2010 · Жалоба Который у каждого браузера свой, как и DOM Всё-таки для простых интерфейсов (типа страницы настроек) наверно проще статическую табличку сгенерить с парой кнопочек внизу (как впрочем все и делают) Нет, JS движок у каждого браузера свой, но есть стандарт, и если код писать не юзая специфичных браузерных фич, то JS код исполняется одинаково на всех браузерах, на этом весь Web стоит, как по другому? (ну исключение разве что IE6, который все убивают, но ни как не убьют). Если на странице 1-2 кнопки то может быть (хотя лично для меня и это спорно :) ), но когда настроек достаточно много, то... :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться