Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] Кеширующий прокси. Предотвратить кеширование.

Ответить
Настройки темы
[решено] Кеширующий прокси. Предотвратить кеширование.

Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Стоит такая задача:
необходимо что бы юзер через прокси-сервер всегда получал ликвидную ниформацию с удаленного сервера ( на нем лента новостей), а не кэшированую с прокси.
какой хтмл код для этого надо вставить на ленте?
вариант <META HTTP-EQUIV="Expires" Content="0"> не подходит. нужен еще один способ.

Отправлено: 15:26, 18-01-2007

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Если честно, то на вскидку как Отче Наш не скажу HTML аналогов нижеприведенному php-коду (мне это просто не нужно), но если Вам в самом деле нужен ответ, то не составит труда преобразовать.
Код: Выделить весь код
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header ('Cache-Control: no-store, no-cache, must-revalidate');
header ('Cache-Control: post-check=0, pre-check=0', false);
header ('Pragma: no-cache');

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 17:23, 18-01-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Это все те же метаданные, которые помещаются в заголовок HTTP. А есть ли еще способ?
Прокси сохраняет страницу по ее URL, а если ввести URL, но измененный и ссылающийся на эту же страницу (добавить в конец ?=...) то прокси заново загрузит страницу. Можно ли такую возможность как-то использовать в своем коде?

Отправлено: 13:08, 19-01-2007 | #3


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


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

Отправлено: 13:36, 19-01-2007 | #4


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


На HTML - только руками . Можно попробовать на JavaScript. Что-то вроде на событии onload документа:
Код: Выделить весь код
var links = document.getElementByTagName('A');
var dt = new Date();
for (i in links) {
   if (!links.hasOwnProperty(i)) continue;
   links[i].href += (links[i].href.indexOf('?') == -1 ? '?rnd=' : '&rnd=') +  + dt.getTime();
}

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 15:51, 19-01-2007 | #5


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Prisoner
document.getElementByTagName - не сработает
document.getElementsByTagName

for (i in links) -> for (var i = 0; i < links.length; i++)

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 16:23, 19-01-2007 | #6


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Какой алгоритм этого кода? Причем тут getElementsByTagName('A'). Для Ява скриптов нужен IIS? на Апаче он будет работает? мне просто это надо засунуть в cgi и скомпилить на сях.

Отправлено: 23:34, 19-01-2007 | #7


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Vlad Drakula, спасибо, очепятался. Но а на счет цикла можно поспорить, правда, чую, что зря .
mask, Вы запутались. JS выполняется клиентом - броузером в большинстве случаев. Это всего лишь кусок текста оформленный как того требует JS. Я все сказал постом ранее. Учитывая поправки Vlad Drakula можете пробовать. Почитайте что такое JS, с чем его едят, как внедряют в код страницы. А алгоритм простой, реализующий вашу же мысль на счет переменного URL: после загрузки страницы JS код пробегает по всем ссылкам и добавляет к ним переменный параметр. Что-то не так понимаю?

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 02:33, 20-01-2007 | #8


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Prisoner Спасибо. Попробовал этот код на своей странице (<SCRIPT LANGUAGE> и событие onLoad - все вроде по правилам) - того, что хотел не получается.
Т.е. при повторном вводе строки урл моей страницы, выводится кэшированная страница, а не грузиться заново.
Как я понял, реализовать это на чистом html не представляется возможным, необходимо использовать скриптовые языки.

Отправлено: 08:24, 20-01-2007 | #9


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Vlad Drakula, каюсь, Вы были правы. Мне остается только посыпать голову пеплом и ссылаться на утомленность в тщетных попытках обойти массив с численными индексами как хеш %(.
mask, это попробуйте:
Код: Выделить весь код
var links = document.getElementsByTagName('A');
var dt = new Date();
for (var i=0; i < links.length; i++)
  links[i].href += (links[i].href.indexOf('?') == -1 ? '?rnd=' : '&rnd=') +  + dt.getTime();

Отправлено: 09:36, 20-01-2007 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] Кеширующий прокси. Предотвратить кеширование.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Предотвратить повторный запуск w3d1 AutoIt 4 19-09-2009 01:15
[решено] Как предотвратить кэширование страницы? dima1981 Вебмастеру 12 13-06-2009 00:22
[решено] Как можно предотвратить запуск сразу нескольких копий одной программы??? sashadeg AutoIt 8 01-04-2009 00:51
Кеширование диска Captain Nemo Microsoft Windows 2000/XP 9 30-09-2005 10:15
Кеширование флопивода в XP как убрать? Guest Microsoft Windows 2000/XP 10 24-12-2003 08:24




 
Переход