1 / 1 / 0
Регистрация: 06.11.2014
Сообщений: 18
|
||||||
1 | ||||||
Web Сервер09.11.2015, 21:05. Показов 734. Ответов 3
Метки нет (Все метки)
Добрый вечер!
Есть программка которая реализует простой web-сервер для обработки GET-запросов. Программа хорошо работает во всех браузерах помимо IE. Подскажите в чем проблема и есть ли какие-либо ошибки в коде?
Проблему решил, виноват был сама страница сайта. Но если кому-то не трудно, подскажите насчет ошибок в коде или возможно что-то надо добавить или убрать.
0
|
09.11.2015, 21:05 | |
Ответы с готовыми решениями:
3
Свой web сервер Web Страница открывается частично, web сервер выдает лишь часть информации Технология создания приложений на основе многоуревневой архитектуры клиент - Web-сервер - сервер баз данных если на одном компе стоит сервер Оракла, на втором компе - Web сервер(IIS), то.. |
Ушел с форума
|
|
09.11.2015, 23:22 | 2 |
он может послать второй запрос, третий... Может вообще послать сразу штук 5 запросов (это называется request pipelining). Так что без кода парсинга HTTP-потока здесь не обойтись. Ну и в одном потоке это все тоже делать не советую: пока обслуживаем одного клиента, всем остальным сервер недоступен. Масштабируемости никакой.
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
|
10.11.2015, 11:00 | 3 |
Dragon001, плюс, к тому что уже указали:
1) каждый вызов loadFile() - утечка памяти адресуемой через указатель buffer (delete[] buffer перед выделением новой памяти, либо лучше всего проверка сколько байт уже было выделено и если в буффере меньше байт чем нам нужно то тогда сначал удаляем предыдущую выделенную память и затем выделяем сколько нам нужно); 2) каждый вызов sendRespond() - утечка памяти адресуемой через указатель tmp (тоже что в 1); 3) HTTP заголовки "Content - Type", "Content - Length" и т.д. пишутся без пробелов; 4) в заголовке Content-Length нужно указывать кол-во байт в теле отклика; 5) выделение памяти tmp в sendRespond() имхо избыточно, т.к. все что мы хотим отослать находиться уже в памяти и можно избавиться от копирования за счет нескольких посылок данных в сокет (Йон Снейдер Эффективное программирование TCP/IP, совет 26); 6) задайтесь вопросом сколько байт памяти динамически запросит ваш сервер если клиент захочет скачать файл, допустим в 500 MB. Как лучше обработать данную ситуацию без выделения такого большого кол-ва памяти?
1
|
1 / 1 / 0
Регистрация: 06.11.2014
Сообщений: 18
|
|
11.11.2015, 20:36 [ТС] | 4 |
Убежденный, schdub, благодарю, буду исправлять
0
|
11.11.2015, 20:36 | |
11.11.2015, 20:36 | |
Помогаю со студенческими работами здесь
4
Web сервер Web-сервер. WEB Сервер Web сервер Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |