Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

Кэширование WEB-страниц в прокси...КАК?   Найти похожие ветки 

 
Djnt   (2006-04-09 13:43) [0]

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

Если кто с подобным сталкивался, или есть пример кода, ссылка на помощь по этому делу буду очень благодарен!


 
Ketmar ©   (2006-04-09 19:22) [1]

индекс, в котором хранится имя сохранённого на диске файла и время его изменения. размер индекса лимитирован только терпением юзера. для маленьких кэшэй вполне подойдёт какой-нибудь TStringList.


 
Poirot ©   (2006-04-10 09:21) [2]

Для начала проситай про HTTP например, есть замечательные заголовки, которые как раз таки и могут помочь кешировать страницы...
А далее думаю разобраться легче буит по каким признакам искать...
Я в своё время просто хешировал URL и сохрянал файл в соответствии со значением хеша и потом по этому хешу мог спокойно найти страничку, а вот затем уже определить up to date она или нет поможет чтение заголовка HTTP ответа от сервера на запрос HEAD.
Дерзай. Удачи.
Есть простенькая книжка по HTTP:

HTTP Developer"s Handbook By Chris Shiflett
   
Publisher : Sams Publishing
Pub Date : March 21, 2003
ISBN : 0-672-32454-7
Pages : 312


 
Djnt   (2006-04-10 19:32) [3]


> индекс, в котором хранится имя сохранённого на диске файла
> и время его изменения

не очень понял это....индекс по моему разумению это ж уникальное число , номер...как в нем может храниться имя не понятно..
про поиск более менее понял...а вот про сохранение файлов ВЕБА в папку с прокси - есть ли какой нить метод - что б буфер который у меня в buff:=idTCPClient.AllData(); сразу пихнуть в файл с именем запроса?


 
Poirot ©   (2006-04-11 10:45) [4]

>>не очень понял это....индекс по моему разумению это ж уникальное число , номер...
Я же написал - Хеширование - напримерр MD5 можно попробовать - т.е. считаешь хешь строки запроса и получаешь 128 бит или 32 символа в HEX вот это и буит имя файла или уникальный идентификатор файла.
ЗЫ: А почему пользуешь idTCP? чем idHttp не угодил?!
Задача в чем написать HTTP сервер или просто TPC изучить и на нём написать?!
>>buff:=idTCPClient.AllData();
Есть потоки например для этого!


 
Poirot ©   (2006-04-11 10:48) [5]

Частично снимаю свои коментарии поповоду HTTP.


 
Djnt   (2006-04-12 10:22) [6]


> >>buff:=idTCPClient.AllData();
> Есть потоки например для этого!

потоки для сохраненеия буфера? если можно - пример...
да задача использовать именно idTCPServer, на ХТТПсервер там и писать нечего)) там все написано)



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.041 c
2-1154608617
Юра
2006-08-03 16:36
2006.08.27
TServerSocket, stNonBlocking несколько клиентов


1-1152901543
sv133
2006-07-14 22:25
2006.08.27
Программирование LPT-порта


1-1152863944
vigo_
2006-07-14 11:59
2006.08.27
Выделение цветом строк в TDBGrid.


6-1144012942
MVP
2006-04-03 01:22
2006.08.27
Подмена картинок на форуме


1-1152524205
Чапаев
2006-07-10 13:36
2006.08.27
Активировать форму





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский