реклама на сайте
подробности

 
 
> Работа web-сервера, Демо-программа от olimex
Twen
сообщение Aug 2 2011, 12:27
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 163
Регистрация: 7-02-09
Пользователь №: 44 543



Добрый день, имеется отладочная плата от Олимекс STM32 - P107, на сайте я скачал демо-программу работы веб-сервера http://olimex.com/dev/index.html , название файла Ethernet Demo software for EW-ARM 5.50.

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

Если, кто-то работал с веб-сервером пишите...
Спасибо.

Сообщение отредактировал Twen - Aug 2 2011, 12:29
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Twen
сообщение Aug 3 2011, 08:22
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 163
Регистрация: 7-02-09
Пользователь №: 44 543



Цитата
По-видимому, веб-сервер взят из uIP 1.0. Домашняя страница проекта здесь.


Скачал документацию на uIP 1.0 Web Server, почитал... документация состоит с вставок некоторых функций без ясного описания, это не радует...

Смотрите, структура сайта показана на рисунку 1:

У файле httpd_fsdata.c объявленные массивы с аски ссимволов для каждой из вкладок страницы:

static const unsigned char data_index_html[] = {
/* /index.html */
0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0,
0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20,
0x48, 0x54, 0x4d, 0x4c, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49,
.................
}
- массив с данными для закладки Front page

static const unsigned char data_files_shtml[] = {
/* /files.shtml */
0x2f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x73, 0x68, 0x74, 0x6d, 0x6c, 0,
0x25, 0x21, 0x3a, 0x20, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x65,
0x72, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0xa, 0x3c, 0x68, 0x31,
0x3e, 0x46, 0x69, 0x6c, 0x65, 0x20, 0x73, 0x74, 0x61, 0x74,
}
- массив с данными для второй закладки - File statistics

и так далее для всех вкладок. Здесь у массивах код на html - это понятно.

А если я хочу вывести какую-то переменную, то как это сделать?

Я также искал по Аски символам где прописаны названия вкладок :
Front page File statistics Network statistics Network connections

но так и не нашел...где эти названия выводятся?

Потом для каждой из вкладок объявляются структуры:

const struct httpd_fsdata_file file_index_html = {&file_header_html, (char const*)data_index_html, (char const*)data_index_html + 12, sizeof(data_index_html) - 12};

Параметры структуры: адрес следующей структуры, имя вкладки, данные(массив), длинна массива)...

Потом с помощью адресов на эти структуры происходит вывод страницы...Можете пожалуйста его объяснить, в куче функций я просто потерялся...



Сообщение отредактировал Twen - Aug 3 2011, 12:13
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
scifi
сообщение Aug 3 2011, 11:31
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Мне кажется, этот топик к АРМам не имеет практически никакого отношения. Модератор, перенесите в раздел для начинающих, пожалуйста.

Цитата(Twen @ Aug 3 2011, 12:22) *
Мне хотя бы пока что понять как например вывести на веб-страницу значение переменной web_var.

Мне казалось, что я всё уже написал выше. Разъяснений вплоть до уровня "нажмите эту кнопочку, потом вот эту" вряд ли дождётесь.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 03:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01348 секунд с 7
ELECTRONIX ©2004-2016