+  HandyCache форум
|-+  Главная категория» Общие вопросы» Опция "Игнорировать No-Cache"
Имя пользователя:
Пароль:
Страниц: 1 2 [3] 4 5  Все   Вниз
  Отправить эту тему    Печать  
Автор Тема: Опция "Игнорировать No-Cache"  (Прочитано 51845 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #40 : 27 Февраль 2007, 11:20:27 »

Кэширование - это шире записи в кэш. Оно включает как запись, так и последующее чтение оттуда.
Ну что за фантазии? В том же RFC2616 даны определения:

  cache
      A program's local store of response messages and the subsystem
      that controls its message storage, retrieval, and deletion.  A
      cache stores cacheable responses in order to reduce the response
      time and network bandwidth consumption on future, equivalent
      requests.  Any client or server may include a cache, though a
      cache cannot be used by a server that is acting as a tunnel.


   cacheable
      A response is cacheable if a cache is allowed to store a copy of
      the response message for use in answering subsequent requests.
      The rules for determining the cacheability of HTTP responses are
      defined in section 13.  Even if a resource is cacheable, there may
      be additional constraints on whether a cache can use the cached
      copy for a particular request.


Т.е.,
      Кэш - локальное хранение полученных данных...
      Кэшируемость - данные кэшируемы если кэш разрешает их хранение для использования в ответах  на последующие запросы...

...Здесь речь идет о том, что ввиду того, что невалидного чтения не будет не будет и кэширования.
Прям напоминает выяснение что первично: курица или яйцо...  Прикольно Запись в кэш или чтение из кэша.
« Последнее редактирование: 27 Февраль 2007, 11:25:46 от Rick » Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #41 : 27 Февраль 2007, 11:43:03 »

Rick
Не пойму, что ты хочешь доказать пространной цитатой, что кэширование=запись в кэш? Если да, тогда ты не прав. Есть две совершенно равноправных составляющих кэширования - запись данных и их последующее чтение. Без любой из них кэширования не существует. Если ты пишешь все на диск, но никогда потом это не прочтешь - где ж тут кэширование?
no-cache и no-store позволяют регулировать каждую из этих двух составляющих по раздельности. Первая не дает кэшу читать устаревшие данные, вторая - писать на диск конфиденциальные и какие-нибудь еще. Вроде в цитате из rfc2616 все четко написано: что НЕ ДОЛЖЕН делать кэш при виде опции no-cache (не читать с диска невалидный ответ) и для чего это делается. Причем же тут курица и яйцо? Подмигивающий
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #42 : 27 Февраль 2007, 12:13:19 »

Не пойму, что ты хочешь доказать...
О, хороший вопрос. Спасибо, что вовремя остановил, пока я в дебри не полез. Улыбка

Я оспариваю твое утверждение:
Тогда надо назвать эту опцию ее как угодно, только не "Игнорирование no-cache". Но тогда ее полезность близится к нулю. Настоящая no-cache работает с точностью до наоборот: влияет только на чтение из кэша и никак не влияет на запись туда. Т.е. то, игнорируем мы ее или нет, никак не должно влиять на запись в кэш и обязано влиять на чтение. То, что делает НС сейчас - это, на мой взгляд, логическая ошибка.
Я за то, чтобы ничего не менять - то, как есть, вполне понятно и соответствует и логике (что ожидаем от опции) и результатам (что получаем).
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #43 : 27 Февраль 2007, 12:29:57 »

Rick
Я считаю, что оспариваемое тобой мое утверждение абсолютно правильное, т.к. основано на определении no-cache в стандарте. И наоборот, твое утверждение о влиянии no-cache на запись в кэш несправедливо и не имеет обоснования. Подмигивающий
"То как есть" - как раз непонятно, что и вызвало вопрос, инициированный в данной теме. Непонятно, почему "мы ожидаем" от опции того, чего она делать ни в коем случае не должна.
Даю несколько дополнительных ссылок:
Цитировать
Запрос включает в себя директиву управления кэшем "no-cache" или, для совместимости с клиентами HTTP/1.0, "Pragma: no-cache". В запросе с директивой no-cache может не быть никаких имен полей. Сервер не должен использовать кэшированную копию при ответе на этот запрос. Здесь.
Цитировать
no-cache   Кэшированный ответ не должен использоваться без предварительной его валидации. Здесь.
Цитировать
”Pragma: no-cache” means the browser should send the request
to he origin server even if it has a cached copy. This has the
same meaning as ”Cache-Control: no-cache”. Здесь.
Цитировать
A setting of "no-cache" means that the server must verify that the page is current before the browser can display it. Здесь.
Есть подозрение, что ты эти аргументы понимаешь и просто лукавишь Непонимаю
Мое итоговое мнение: нынешнее поведение опции "Игнорировать no-cache" - это баг, подлежащий обязательному исправлению.
« Последнее редактирование: 27 Февраль 2007, 12:48:13 от Михаил » Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #44 : 27 Февраль 2007, 13:08:45 »

Есть подозрение, что ты эти аргументы понимаешь и просто лукавишь Непонимаю
Прикольно
ОК. Соглашаюсь с тем, что в стандарте нет явного указания, что No-Cache как-то явно влияет на запись в кэш. Эта директива обязывает всегда получать новый ответ (файл) с сервера, а не читать его из кэша.
При этом:
1. Директива N-C никак не разрешает/запрещает запись в кэш (т.е. записью вообще не управляет Подмигивающий), а требует не использовать кэшированную копию. Сам ответ кэшируется и используется браузерами, например, в автономном режиме, а Оперой и при переходе по истории вперед-назад (FF в этом тупее - игнорирует N-C только в автономке).
2. В HC опция называется именно и только как "Игнорировать No-Cache" - ни больше, ни меньше. Дык в чем ты углядел ошибку/баг? Т.е. хоть директива и предписывает получение с сервера новой копии файла, он будет взят из кэша. Все как ты хочешь и доказываешь: директива N-C запрещает чтение из кэша, а опция "игнорировать..." допускает это чтение, и в обоих случаях ответ кэшируется - в чем противоречие, что тебе кажется не понятным, и в чем же ты углядел ошибку?  Шокирован
« Последнее редактирование: 27 Февраль 2007, 13:14:41 от Rick » Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #45 : 27 Февраль 2007, 14:02:19 »

Rick
Цитировать
в чем противоречие, что тебе кажется не понятным, и в чем же ты углядел ошибку?
Ошибка в том случае, когда галка отключена (т.е. я не хочу игнорировать no-cache). Тогда НС почему-то:
- запрещает запись в кэш;
- не проверяет валидность файла на сервере.
А должен:
- писать в кэш на общих основаниях;
- проверять запросом к серверу валидность, если файл есть в кэше. Если валиден - выдавать из кэша, нет - тянуть из интернет.
« Последнее редактирование: 27 Февраль 2007, 14:20:29 от Михаил » Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #46 : 27 Февраль 2007, 14:07:26 »

Т.е. когда сервер отдает директиву no-cache, HC действовать  с точностью до наоборот?
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #47 : 27 Февраль 2007, 14:17:40 »

Т.е. когда сервер отдает директиву no-cache, HC действовать  с точностью до наоборот?
Да. В случае отключенной галки.
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #48 : 27 Февраль 2007, 14:48:33 »

Ошибка в том случае, когда галка отключена (т.е. я не хочу игнорировать no-cache). Тогда НС почему-то:
- запрещает запись в кэш;
- не проверяет валидность файла на сервере... проверять запросом к серверу валидность, если файл есть в кэше. Если валиден - выдавать из кэша, нет - тянуть из интернет.
1. В этом случае HC не обязан писать кэш, однако для автономного режима надо-бы. Тем не менее я бы хотел увидеть лог подтверждающий твое утверждение. На примере того же руборда (или другого сервера).
2. Что-то вообще не понятное. С одной стороны ты явно путаешь revalidation с If-Modified-Since, с другой - какой к бесу If-Modified-Since если файла нет в кэше?
Проверить валидность - не значит проверить неизменность: N-C однозначно предписывает получить новый ответ (загрузить файл с сервера) - никаких If-Modified-Since, если ты это подразумеваешь под "проверкой валидности".
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #49 : 27 Февраль 2007, 15:29:54 »

Rick
Цитировать
я бы хотел увидеть лог подтверждающий твое утверждение
Адрес.
Лог 1 сделан при выключенной "Игнорировать no-cache" и праввиле "." в списке "З". Видим, что запись в кэш не ведется. Это же подтвердит и монитор, если пойдешь по этому адресу. В папке кэша файл не появится/перепишется.
Лог 2 сделан при отключенной опции "Игнорировать no-cache" при наличии этого файла в кэше и правила "." в списке "Н". Видим, что никакого запроса валидации к серверу не уходит. Файл просто берется из кэша, что подтверждает и запись в мониторе.
Цитировать
Проверить валидность - не значит проверить неизменность
Почему? Как раз это и означает. Надо проверить ETag или Last-Modified. На выбор.

* log 1.rar (1.63 Кб - загружено 9 раз.)
* log2.rar (1.34 Кб - загружено 9 раз.)
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #50 : 27 Февраль 2007, 15:33:24 »

Тогда я перестал что-либо понимать. Буду перечитывать ветку....

Логичней было бы перенести блок настроек:
- Сохранять www. для URL
- Не сохранять файлы меньше ... Байт
- Не сохранять файлы больше ... КБайт
- Игнорировать No-Cache
- Удалять ссылку на порт 80 из имени файла в кэше
в шапку списка "Запись в кэш", как уже кто-то предлагал...

Помню. Я и предлагал. Совсем не в том месте сейчас эти настройки.
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #51 : 27 Февраль 2007, 15:59:42 »

Адрес.
Лог 1 сделан при выключенной "Игнорировать no-cache" и праввиле "." в списке "З". Видим, что запись в кэш не ведется. Это же подтвердит и монитор, если пойдешь по этому адресу. В папке кэша файл не появится/перепишется.
Что ж, доверяй, но проверяй: пошел по этому адресу. Опция N-C включена, в З правило ".*", и чтобы долго не мудрствовать просто переименовал текущую папку кэша.
Итого, имею:
Код:
27.02.2007 15:37:11 # 10808: Connection from local/127.0.0.1
 
27.02.2007 15:37:11 # 10808 >>> URL: http://forum.ru-board.com/forum.cgi?forum=35
GET http://forum.ru-board.com/forum.cgi?forum=35 HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: forum.ru-board.com
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: gzip, deflate
Referer: http://handycache.ru/component/option,com_smf/Itemid,10/topic,253.msg2252/boardseen,1/
Cookie: ...
Cookie2: ...
Proxy-Connection: close

27.02.2007 15:37:11 # 10808: DNS resolve forum.ru-board.com --> 72.232.29.238 (From cache)
 
27.02.2007 15:37:11 # 10808:  Outbound Connection
 
27.02.2007 15:37:15 # 10808 <<< URL: http://forum.ru-board.com/forum.cgi?forum=35
HTTP/1.1 200 OK
Server: nginx/0.3.15
Date: Tue, 27 Feb 2007 12:37:17 GMT
Content-Type: text/html; charset=windows-1251
Connection: close
Set-Cookie: ...
Set-Cookie: ...
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Pragma: no-cache
Cache-control: no-cache, must-revalidate, no-store
Content-Encoding: gzip

27.02.2007 15:37:15 # 10808:  Outbound Disconnection
В кэше: ...\forum.ru-board.com\forum.cgi^\forum=35 (gzip)
В Мониторе: 27.02.2007/15:37:11 local http://forum.ru-board.com/forum.cgi?forum=35  12696  2 "200 OK gzip" З.1 З.1 (Запись в кэш): .*

Ну дык, э-э-э... что не так?

Цитировать
Цитировать
Проверить валидность - не значит проверить неизменность
Почему? Как раз это и означает. Надо проверить ETag или Last-Modified. На выбор.
С чего ж ты так решил то? Читай стандарт! Cache-Control: no-cache - to force any intermediate caches to obtain a new copy from the origin server. Никаких проверок - только новая загрузка!
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #52 : 27 Февраль 2007, 16:29:04 »

Поспешишь - людей насмешишь. Грустный
Лог 1 сделан при выключенной "Игнорировать no-cache" и праввиле "." в списке "З". Видим, что запись в кэш не ведется. Это же подтвердит и монитор, если пойдешь по этому адресу. В папке кэша файл не появится/перепишется.
Я то выше привел случай для включенной опции N-C.

Да, подтверждаю, при выключенной опции N-C запись в кэш не производится. Баг ли это? Спорно, но в общем я склонен согласиться: что смотреть в автономке, если запись в кэш не производится?
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #53 : 27 Февраль 2007, 17:09:53 »

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

Ни разу не видел, чтобы сервер на динамический контент, который формируется при каждом запросе клиента и поэтому специально сопровождается директивой "no-cache", велел клиенту брать файл из кэша!

Он всегда ПОВТОРНО формирует и посылает файл клиенту! Никакого "304 Not Modified" на клиентский запрос с "ETag" и "If-Modified-Since" здесь невозможно в принципе!

К слову, HC при наличии файла в кэше вставляет этот "If-Modified-Since" во ВСЕ запросы к серверу, в т.ч. и в те, которые пришли с директивой "no-cache", однако я не припомню случая, чтобы сервер хоть раз разрешил HC взять такой файл из кэша!

Это легко проверить на нашем форуме или на ру-борде - выбери самую старую тему, включи опцию "Игнорировать No-сache", чтобы страница форума записалась в кэш и попробуй 10 раз подряд обновить страницу - все 10 раз повторно загрузишь с сервера эту же не изменившуюся страницу, хотя в запросах везде был "If-Modified-Since"!

Приведи пример реальной страницы, где это не так!

В общем, "ревалидация" при директиве "no-cache" всегда означает ПОВТОРНУЮ ЗАГРУЗКУ файла! Поэтому сервер и говорит клиенту "no-cache", что утрированно означает: "Не кэшируй, т.к. все равно придется грузить файл снова!"... Улыбка
« Последнее редактирование: 27 Февраль 2007, 17:16:19 от DenZzz » Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #54 : 27 Февраль 2007, 17:26:58 »

Почитал по русски
http://zeus.sai.msu.ru:7000/nets/semenov/4/45/http4561.shtml
Нигде нет указания кэшировать данные с директивой No-сache
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #55 : 27 Февраль 2007, 17:40:55 »

Чтобы были волки сыты и овцы целы, предлагаю:

  • перенести опцию в настройки списка Запись в кэш.
  • переименовать в Не сохранять объекты с директивой no-cache

Если раньше надо было галку включать, то теперь для такого же эффекта ее надо будет выключить.
Логика работы HC не изменится. И никто не обвинит в неправильном использовании понятия no-cacheУлыбка
« Последнее редактирование: 27 Февраль 2007, 17:48:18 от Сергей » Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #56 : 27 Февраль 2007, 19:02:36 »

Rick
Цитировать
С чего ж ты так решил то? Читай стандарт! Cache-Control: no-cache - to force any intermediate caches to obtain a new copy from the origin server. Никаких проверок - только новая загрузка!
Вот не пойму, для чего хитрить? Здесь говорится не о no-cache в ответе сервера, а о no-cache в запросе клиента. Давай будем считать вопрос о смысле no-cache в ответе исчерпанным приведенной несколькими постами выше цитатой из rfc2616. Подмигивающий
DenZzz
Цитировать
В общем, "ревалидация" при директиве "no-cache" всегда означает ПОВТОРНУЮ ЗАГРУЗКУ файла! Поэтому сервер и говорит клиенту "no-cache", что утрированно означает: "Не кэшируй, т.к. все равно придется грузить файл снова!"...
Даже не хочется искать такой сервер. Потому как достаточно представить на пути от пользователя к серверу любой кэш-прокси, поддерживающий игнорирование no-cache (пусть это будет для примера сквид с его refresh_pattern ignore-no-cache). Когда эта опция у вышестоящего прокси будет включена, он будет давать одинаковые ответы с no-cache на каждый наш запрос. Вот тут-то нам и надо будет брать из своего кэша.
Никак в толк не возьму, из-за чего нам надо пытаться всячески уклоняться от той трактовки no-cache, которая обозначена в стандарте? Что это нам дает кроме лишней головной боли от несоответствия терминов?
Сообщить модератору   Записан
cepera_ang
Beta tester
*****

Репутация: +9/-4
Offline Offline

Сообщений: 355


« Ответ #57 : 27 Февраль 2007, 20:24:46 »

Вот не пойму, для чего хитрить? Здесь говорится не о no-cache в ответе сервера, а о no-cache в запросе клиента. Давай будем считать вопрос о смысле no-cache в ответе исчерпанным приведенной несколькими постами выше цитатой из rfc2616. Подмигивающий
О каком no-cache в запросе клиента вообще идет речь? Откуда оно там может взяться? no-cache присутствует в ответе сервера для того чтобы никакие прокси и т.д. (кроме нарушающих в данном случае стандарты) НЕ кешировали этот запрос. Так как HC нарушает в этом месте стандарт по нашему желанию, то он и кеширует и отдает такие запросы в соответствии с тем как мы его настроили (по спискам). Если галочка убрана - действует в соответствии со стандартом и НЕ кеширует этот запрос и НЕ отдает его из кеша. Если при это не будет работать автономный режим - значит это наше желание/ошибка пытаться использовать автономный режим с такой настройкой.

Потому как достаточно представить на пути от пользователя к серверу любой кэш-прокси, поддерживающий игнорирование no-cache (пусть это будет для примера сквид с его refresh_pattern ignore-no-cache).
Этот прокси сервер будет нарушением стандарта и в идеальном мире вообще не должен существовать.
Когда эта опция у вышестоящего прокси будет включена, он будет давать одинаковые ответы с no-cache на каждый наш запрос. Вот тут-то нам и надо будет брать из своего кэша.
Может быть наоборот он будет давать ответы БЕЗ no-cache? И зачем нам вообще НС если у нас выше будет такой squid? Если он кеширует, то как бы мы не ставили/убирали "Игнорировать no-cache" все равно получим устаревшие данные (из кеша squid).
В общем сейчас все делается именно так как и следует: с галкой Н-С игнорируем и пишем все/читаем по спискам, без галки - не пишем/обновляем с сервера.
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +291/-14
Offline Offline

Сообщений: 5177



« Ответ #58 : 27 Февраль 2007, 20:41:57 »

серега_ang
Цитировать
О каком no-cache в запросе клиента вообще идет речь?  Откуда оно там может взяться?
Не понял.
Цитировать
Этот прокси сервер будет нарушением стандарта и в идеальном мире вообще не должен существовать.
Но мы то живем в реальном мире Подмигивающий Вместе с НС и Squid. Которые не будут, а уже давно используют нарушение стандарта в благих целях.
Цитировать
И зачем нам вообще НС если у нас выше будет такой squid?
Проблема в том, что мы не выбираем то, что выше нас. Мы можем только подстроиться под это. В данном случае "подстроиться" означает кэшировать то, что не кэшируется сквидом, а по нашему мнению кэшироваться должно. В конце концов мы можем и не знать про этот вышестоящий сквид.
Цитировать
В общем сейчас все делается именно так как и следует: с галкой Н-С игнорируем и пишем все/читаем по спискам, без галки - не пишем/обновляем с сервера.
"Следует" откуда? Обозначь конкретно, плиз.
Сообщить модератору   Записан
cepera_ang
Beta tester
*****

Репутация: +9/-4
Offline Offline

Сообщений: 355


« Ответ #59 : 27 Февраль 2007, 21:42:20 »

серега_ang
Цитировать
О каком no-cache в запросе клиента вообще идет речь?  Откуда оно там может взяться?
Не понял.

Ты написал:  Здесь говорится не о no-cache в ответе сервера, а о no-cache в запросе клиента.
Вопрос: причем тут какой-то no-cache в запросе клиента? Если это опция устанавливаемая сервером?
Цитировать
Проблема в том, что мы не выбираем то, что выше нас. Мы можем только подстроиться под это. В данном случае "подстроиться" означает кэшировать то, что не кэшируется сквидом, а по нашему мнению кэшироваться должно. В конце концов мы можем и не знать про этот вышестоящий сквид.
Если сквид уже игнорирует no-cache, то мы на него повлиять не можем, правильно? В этом случае не зависимо от наших настроек файлы могут оказаться не актуальными, значит их можно брать из своего кеша, не тратя времени на запрос в сквид и далее. Так и происходит согласно правилам, если Игнорировать no-cache включена. Если выключена и no-cache есть - значит мы запрашиваем файл с сервера (независимо от того как настроены вышестоящие серверы, кеши, независимо от того есть ли файл в нашем кеше, какие правила в списках и т.д.).
Цитировать
В общем сейчас все делается именно так как и следует: с галкой Н-С игнорируем и пишем все/читаем по спискам, без галки - не пишем/обновляем с сервера.
"Следует" откуда? Обозначь конкретно, плиз.
Следует из задумки автора, ожиданий пользователей, приведенного мною описания алгоритма. Так сделано и так работает и нравится пользователям и не вызывает вопросов (если подумать и разобраться - а без этого никуда). И так останется я думаю. Тем более что у 80% (цифра из головы, но интуиция мне подсказывает что она верна) пользователей галочка включена и все работает как надо.
ЗЫ: 90% пользователей используют word на 10%.
ЗЗЫ: ХендиКеш - не проще ворда. А происходящие процессы - сложнее.
ЗЗЗЫ: посмотрите на Вилли, ему вряд ли поможет любое упрощение или изменение, без длительного обучения. на компьютере в домене (значит на работе), есть траффик компрессор, мастон, хендикеш, и в сети есть сквид, и парень не знает как "пройтись раром", "что такое dzip" и думаю не обидится если опция "Игнорировать no-cache" будет называться "Контакт с марсианами". И таких большинство. Подумайте о них, тех кому все настроил "опытный пользователь в роли стандарта". Предлагая - думай и о тех, и о других.
Сообщить модератору   Записан
Страниц: 1 2 [3] 4 5  Все   Вверх
  Отправить эту тему    Печать  

 
Перейти в: