Как известно, фокс при некорректном выходе полностью теряет кэш. То есть, если закрыть его не по кнопке закрытия, а, например, просто прибить процесс firefox.exe, или из планировщика какого-нибудь, или при падении, или просто выйти из винды, через Пуск - Выключение, если фокс при этом был загружен - после перезагрузки кэша не будет. То же самое при исчезновении питания компа, при выключении компа через пульт от тюнера, при перегреве проца, при глюке железа, при просто глюке фокса от кривого расширения.....   
Дело в том, что при старте фокс устанавливает бит dirty на кэш, а при выходе его снимает. При нестандартном выходе этот бит не снимается, и при следующем старте фокс принудительно очищает весь кэш, во-избежание недоразумений. Кому-то это кажется нормальным, но в России, где почти все на модемах - это дикий баг.
Поэтому есть два выхода. Либо делать периодически бэкап кэша, а при старте фокса проверять этот бит, если он установлен - копировать кэш из бэкапа в папку кэша. Плохо, что приходится делать бэкап, если это делать при старте браузера - это дополнительные несколько секунд, а он и так не быстро стартует. Можно это делать при старте винды, но тогда информация, накопленная за день, исчезнет, хоть это и лучше, чем если вообще весь кэш слетит.
А есть и еще один вариант. Я проверил, размер папки кэша при работе фокса и после его выхода, если ничего не загружать после замера, идентичен, значит - при выходе никаких процессов в файлах кэша не происходит, переиндексации тоже. Вручную этот бит обнулял - все, что в кэше было - все осталось на месте. Возможно будет появление лишних файлов, если фокс упал во время загрузки странички, но это оч маловероятно, да и несколько килобайт - небольшая плата за кэш, нажитый неделями :) По-любому, надо тестировать.

Теперь главное.
После запуска фокса надо в файле %ProfilePath%\Cache\_CACHE_MAP_ обнулить байт по адресу 000F. Это и есть тот самый флаг. Файл на запись доступен при работающем фоксе. То есть, что бы не случилось, при выходе фокса этот бит будет нулевым, и при последующем запуске фокс ничего не станет удалять из кэша! Вручную все проверено, работает на-ура.
Осталось написать расширение, которое это будет делать, и проблема будет навсегда решена, независимо от версии браузера. Ребята, сделайте же это благородное дело, иначе народ с "кэшастой" Оперы никогда не слезет - альтернативы-то нет, как выяснилось!

http://forum.mozilla.ru/viewtopic.php?pid=24170#p24170 - тут djet описал первый способ, с бэкапом кэша.

ура работает, вот тока при работающем фоксе править не получается
как бы теперь это автоматизировать? кто справится?

Готов патч, лечащий этот баг. Тестируйте, хочется узнать результаты.
http://panradio.narod.ru/patch.zip

arvin

вот тока при работающем фоксе править не получается

Все получается, иначе как бы я проверил? Я ж все описал. Патч - это хорошо, но все же это изменение кода... возможны последствия... поэтому тестируйте :)

Файл на запись доступен при работающем фоксе.

Попробую расширение написать.

Хм, сейчас посмотрел, доступ закрыт на запись во время работы FF.

А как же я правил? Кстати - редактором FC v0.66, он какой-то неправильный, мож в нем дело? Вот прям сейчас открыл этот файл, бит стоял в 1 - я тестировал :), переправил в 0, сохранил, переоткрыл - для гарантии - там 0... так что файл открыт на запись! По крайней мере - у меня.

Патч работает! Пока ничего не упало :D

Странно, возможно дело в редакторе. Редкатор в FAR manager не открывает на редактирование. Word тоже (просто проверил). Ладно вечером, если будет время, попробую через расширение функциями XPCOM открыть, тогда точно будет видно.

Патч работает! Пока ничего не упало

Смотреть надо так: выставить кэш этак 1 мег, походить, уронить фокса из диспетчера задач. Потом опять запустить, походить, снова прибить.. и так несколько дней. Чтоб кэш самоочищался. Прибивать фокса во время загрузки странички, в самые ответственные моменты. А через несколько дней посмотреть, сколько там в кэше будет занимать папка, и сколько он говорит у него занято по about:cache. Ну и посматривать, все ли кэшируется, это видно по тому, подгружается ли графика, или из кэша моментально берется. Но - имхо - чтоб заметно добавить грязи в папку кэша, которая непроиндексируется - это надо потрудиться.

Блин, патч -- это не самое лучшее решение, лучше это в расширении реализовать. =( Изменение кода может отразиться, если не сейчас, то потом...

А какая разница, если получится, то расширение будет делать то же самое, что и патч. Просто решение с расширением изящнее. Хотя не факт, что получится..

А какая разница, если получится, то расширение будет делать то же самое, что и патч. Просто решение с расширением изящнее. Хотя не факт, что получится..

Так патч он изменяет код программы, а расширение подключается при загрузке браузера... Его можно удалить, выключить и так далее.

А, извиняюсь, не посмотрел на патч. Да, изменение кода exe - не есть хорошо. В общем, лучше написать vbs скрипт который сначала изменяет _CACHE_MAP_, а потом запускает лису. Или, опять же, по-возможности, расширение, привязки к платформе не будет. Правда, я не знаю, как устроен кэш на Linux.

написать vbs скрипт который сначала изменяет _CACHE_MAP_, а потом запускает лису.

Если делать хорошо, то надо, чтоб ни ярлыки, ничего другого не пострадало. То есть, надо делать ехе-шник, с ярлычком фокса, и называть его firefox.exe, а сам фокс переименовывать в firefox_.exe, например. Тогда запуск фокса и будет означать запуск этой программки, которая

сначала изменяет _CACHE_MAP_, а потом запускает лису

С другой стороны, патч всего лишь отменяет проверку этого бита, который приводит к срыву кэша, и после старта фокса к патченному участку обращений больше нет, имхо. Потому что так же можно пропатчить мозиллу, только там патчится dll-ка.  Так что нигде в другом месте, при работе браузера, это не отразится. Точнее - не должно отразиться :) Я хотел было написать на delphy, но... последний раз программил еще под cp/m, если кто такую помнит, на паскале... имхо, программер сделает и лучше, и быстрее. Это если делать ехе-шник.
А с расширением, которое после старта фокса принудительно установит этот бит в 0, как? Одно НО: если фокс будет запущен не по иконке, а щелчком по html-файлу, тогда как это будет работать, то есть - что раньше происходит, начало рендеринга и кэширования, или запуск расширений? Ведь расширение должно сбросить флаг после того, как он установится в 1 самим фоксом, но до того, как начнется обращение к кэшу. Может, перехватывать обращение к этому файлу, и сразу после этого сбрасывать бит?

все же, потестируйте несколько дней патчик, если все нормально - можно будет выложить на всеобщее качАние :) У меня пока все ОК, болтаюсь по сайтам...

kullibbin
А как на счет исхожников? :) А то както странно патчить exe, когда они есть...

Решил провести эксперимент с патченным фоксом, дабы раз и навсегда разобраться, добро это или зло. Выяснил, что если фокс крэшанул, то кэш, набранный за последнюю сессию, и настройки не сохраняются. Предыдущий кэш остается (если фокс пропатчен), или обнуляется - если патча нет.

При старте фокса файл _CACHE_MAP_ считывается в память, а на исходный файл ставится флаг dirty. Вся работа кэша сохраняется в памяти, и только по выходу из фокса файл  _CACHE_MAP_ перезаписывается со сброшенным флагом и свежими данными. Если фокса крэшануть, то останется просто старый файл _CACHE_MAP_ - это, видимо, карта кэша, только с установленным флагом. Только и всего. То есть, даже этот бит переписывать не надо, достаточно сохранять _CACHE_MAP_ перед запуском, если он чистый, и при необходимости перезаписывать им меченый _CACHE_MAP_ , благо они идентичны будут. То, что он не изменяется - проверил в тотале, взял этот файл перед стартом фокса, и еще одну копию - после как походил по сайтам, при запущенном фоксе. Они оказались идентичными (кроме флага). Потом закрыл фокса - теперь в файле куча изменений. А размер у него всегда один и тот же, что и сбило с толку. Поэтому можно писать расширение, которое снимает этот бит, без проблем - его можно снять в любое время, пока работает фокс, после того, как он будет им установлен.
Теперь - что происходит при установке патча или обсуждаемого расширения.
Если после серфинга фокса крэшануть, то останется старый мап кэша, со снятым флагом :) Как будто последней сессии и не было. Осталось узнать, как это повлияет на работу кэша, не будет ли подмены объектов, или разрастания папки кэша. Сделал так.
Установил размер кэша 400 кило, чтоб много не качать. Обнулил весь кэш.
Попробую ничего не крэшать, набить несколько раз кэш и посмотреть, какая будет папка кэша размером :)
Выбрал несколько сайтов с картинками - галереями. Зашел на первый, закрыл фокса, потом на другой, снова закрыл, потом на третий, и снова закрыл. Пока грузил, кэш по логу доходил до 550 кило - при установленных 400, потом падал до 83 кило,  в конце загрузки установился на 47 кило, размер папки - 550. Многих объектов в кэше не было - картинки большие, одновременная загрузка нескольких картинок занимает весь кэш, вот он его и освобождает, грохая предыдущие картинки, а они большие. Обновил три картинки - кэш подскочил до 390 кило - картинки большие, под 120 кило каждая.
Вышел из фокса, снова запустил, подгрузил еще 4 новых картинки - кэш по логу - 380, размер папки - 770. В папке кэша, видимо, еще какие-то временные файлы сохраняются. Снова корректно закрыл и открыл фокса - и подгрузил еще 4 картинки, при загрузке размер кэша по логу так же прыгал, в конце получилось 390 кило в логе, и 750 в папке. Так что папка больше не растет, а уменьшается в размере. Механизм самоочищения и контроля кэша работает, значит.
Теперь буду крэшать фокса и наблюдать.
Захожу на первый сайт, набиваю кэш. При установленном размере кэша 400 кило, после загрузки "под  потолок" и последующего крэша по идее должен снова набираться новый кэш, и получиться более 800 кило в папке кэша, старый-то кэш он как бы должен не видеть, однако этого не происходит, после второго крэша размер папки 650 кило, и периодически уменьшается-увеличивается во время загрузки, то есть размер папки кэша стабилизируется. Еще два раза набирал по 500 кило ориентировочно и в конце крэшал - папка не растет дальше.

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

Забил кэш на первом сайте на 390 кило - по логу фокса, корректно вышел, снова открыл - кэш на месте, зашел на другой сайт, забил около 1 мега, чтоб старое очистилось и новое записалось, при открытии страничек размер  кэша колеблется 220 - 400 кило по логу фокса, очистка значит работает.
Подгрузил второй сайт, папка стала 630 кило, а перед тем была 700. Размер кэша по логу - 163. Посмотрел - от первого сайта осталось всего 4 картинки, маленьких, в кэше. Крэшанул.
Теперь он помнит карту предыдущего кэша размером 390, которого уже нет.  Проверяю - никаких глюков, просто нет картинок, да и все, хоть в кэше они и прописаны. При просмотре кэша - вместо картинок просто пустые странички. Захожу снова на первый сайт. Накачиваю кэш, как в первом случае. Набил, кэш по логу упал до 60 кило, и там ни одной подгруженной картинки нет - вот он, глюк :) . Однако реально - многие фотки на месте, по мере открытия фоток лог кэша растет. Никакого заметного трафика при этом нет. Как будто он заново прописывает имеющийся кэш в карте кэша и показывает в логе. Некоторые картинки он грузит из сети - по монитору трафика видно, есть трафик, прорисовка медленная, их действительно в кэше нет. То есть, глючные элементы в кэше отсутствуют! Размер папки - 670 кило. Все около этой цифры и крутится. То есть - никаких глюков, влияющих на отображение страниц, нет. Я боялся, что будет папка разрастаться, после каждого крэша, и что может быть крякозябры вместо нормального кэшированного объекта. Ничего подобного не наблюдается. Но выводы сделать можно :)

Swappp
А насчет исходников - я не программер, кто компилит - к ним :) Патч тоже хорошее дело, не надо качать переделанного откомпиленного фокса :)

Firefox 1.0+ 20050525

патч не работает:(

попробуй из консоли пропатчить оригинальный firefox.exe, что он там скажет? Найдет, что патчить?

kullibbin пишет

попробуй из консоли пропатчить оригинальный firefox.exe, что он там скажет? Найдет, что патчить?

он то патчит, появляется файл FIREFOX.SAR но кеш все равно падает

а в linux работать будет? у меня нет firefox.exe, есть firefox-bin

20050527 Firefox/1.0+ нормально пропатчился.

arvin
В дип парке чуть по другому, там размер кэша откатывается к предыдущему состоянию. Если у тебя был 0, ты походил по нету, потом крэшанул, то 0 и получишь. Походи, набери чуток, потом выйди, снова запусти, глянь размер кэша, походи и крэшани. Последние похождения как корова языком, зато предыдущее все будет в лучшем виде :)

а в linux работать будет? у меня нет firefox.exe, есть firefox-bin

а в линукс можно скрипт написать, смысл - сохранение файла мап и при запуске - проверка на вшивость, если был крэш - то этот файл перезаписать. Я вроде все понятно растолковал, читай внимательнее. Еще вот тоже - http://forum.mozilla.ru/viewtopic.php?pid=24170#p24170

у меня кеша 200 метров и нифига:(

2kullibbin: письмо прочитал, заинтересовался, хорошая тема.

Написал компоненту, там есть пара скользких мест, которые надеюсь поправить сегодня вечером, потом выложу куда-нибудь на тестирование.

Firefox 1.0+ 20050530

нормально пропатчился и пока работает :P

Написал расширение, которое тупо устанавливает флаг при выходе из программы. Но это не выход. Лиса при каждом изменении кэша, видимо, взводит флаг. Надо как-то отслеживать это событие. Кто что предложит?

Компонента, меняющая флаг, уже готова. Осталось дело за малым:
1) протестировать;
2) найти хорошее решение для определения папки, в которой лежит кэш, потому как сделать это из компоненты в процессе запуска FF достаточно проблематично (во всяком случае, для меня).
3) написать кроссплатформенный вариант (но это не долго).

Так что в крайнем случае в теч.суток это всё хозяйство появится в виде расширения.

потестил. такой глюк заметил: страницы перестают перерисовываться. словно винест все.  закрываю фф штатно - аварийное завершение. кэша вместо 1.5 метров 860 килов :) мистика.

Желающие посмотреть в действии могут скачать, 3кб. Как настроить (легче пока не получилось; да и, видимо, не потребуется уже):

Ищем файл {firefox_install_directory}\greprefs\all.js, открываем, добавляем:

Выделить код

Код:

pref("browser.cache.disk.fixer_directory", "C:\\Documents and Settings\\Administrator\\Application Data\\Mozilla\\Firefox\\Profiles\\wqlzup5z.default\\");

Естественно, изменив путь к профайлу на свой. Ставим расширение и оно начинает работать с файлом {profile}\Cache\_CACHE_MAP_

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

alc

тупо устанавливает флаг при выходе из программы. Но это не выход. Firefox при каждом изменении кэша, видимо, взводит флаг. Надо как-то отслеживать это событие.

Флаг надо сбрасывать после старта фокса. Он его устанавливает, а его надо снова сбрасывать, никакие события отслеживать не надо.
Mash

решение для определения папки, в которой лежит кэш,

В папке D:\Documents and Settings\kullibbin\Application Data\Mozilla\Firefox есть файлик profiles.ini - в нем прописан путь к профилю и имя профиля hl98s84q.default (у меня)
D:\Documents and Settings\kullibbin\Application Data\Mozilla\Firefox\Profiles\hl98s84q.default\Cache - а тут сам кэш.

страницы перестают перерисовываться. словно винест все.  закрываю Firefox штатно - аварийное завершение. кэша вместо 1.5 метров 860 килов smile мистика

Ну я ж долго расписывал на предыдущей страничке, что это нормально, кэш может меняться, уменьшаться, потом снова наращиваться.. никакой мистики, все нормально. Ставим кэш метров 10 как минимум  и наслаждаемся.

RED

такой глюк заметил: страницы перестают перерисовываться

Я это тоже описал - в мапе кэша страница как бы должна быть, а реально ее нет. Обнови, и все будет. Это не особо и глюк, просто пропали из кэша некоторые данные, ведь перед тем был крэш?

arvin

нормально пропатчился и пока работает

Расскажи, что не так делал, тут же не только мы бываем, мож у кого еще сразу не получилось?

Подскажите до кучи, есть ли расширение, чтоб оперативно менять параметр browser.cache.check_doc_frequency с 3 на 2 и наоборот, для модемщиков тоже фича нужная.

kullibbin пишет

(ICQ) флаг устанавливается тогда, когда мап считался в память, то есть уже когда в профиле находишься и инициализируешь кэш

вот после этого надо этот флаг снимать

А-а, всё, утро вечера... дошло, как до жирафа. Если флаг снимать после старта лисы, когда профиль "применён", найти путь к папке кэша не составляет труда, да. Но мне сама идея выжидания, хоть и небольшого, после старта браузера нравится меньше, т.к. в этот момент он тоже может рухнуть, вероятность больше, чем при "app-startup". Хотя не знаю, м.б. там подсесть на что-нибудь можно.

Всё-таки патч получается лучше в этом плане.

Вот мой вариант расширения: http://chsetgaz.ru/tmp/ (там ссылка на странице).
Дополнительных настроек не требуется. Должно работать сразу после установки.

P.S. расширения сыпятся как из рога изобилия ;)

Но мне сама идея выжидания, хоть и небольшого, после старта браузера нравится меньше

В цикле проверяй, как только бит установлен, скидывай его и спать :)

http://forum.mozilla.ru/uploaded/patch.zip.txt - закинул в upload, txt разумеется убрать надо :)
-----------
2 djet, alc, Mash - спасибо нам всем, ребята! Несколько лет не было вообще никакого решения, а тут - на выбор :) Всегда бы у нас все так оперативно делалось :)
Интересно, расширение под линуксом пойдет?

Можно еще как вариант  в течение, например, первой минуты каждую секунду в отдельном потоке проверять флаг. Mash, что скажете?

Интересно, расширение под линуксом пойдет?

Если структура папок (Профиль->Кэш) и их названия такие же, то пойдет.

alc
Mash
А ваши расширения точно определяют путь к кэшу? У меня, например, он задан в browser.cache.disk.parent_directory, а в 1.1 он перемещён в Local Settings.

У меня папка определяется вызовом сервисных функций

Выделить код

Код:

function getSpecialDirectory(name)
{
   const DS_CTR = "@mozilla.org/file/directory_service;1";
   const nsIProperties = Components.interfaces.nsIProperties;

   var directoryService =
     Components.classes[DS_CTR].getService(nsIProperties);
   return directoryService.get(name, Components.interfaces.nsILocalFile);
}
    file = getSpecialDirectory("ProfD");
    file.appendRelativePath('Cache');
    file.appendRelativePath('_CACHE_MAP_');

В 1.0 точно будет работать. Думаю, на Linux тоже. Посмотрел, структура папок там такая же. Никакой самодеятельности. Вот превратиться 1.1 в бету, тогда можно будет и ее добавить.

А по поводу ваших настроек, надо на это дело посмотреть повнимательнее. Расширение писалось буквально на одном дыхании (колбасило меня сильно :) ).

2 kullibbin, alc: я уже узнал куда прицепиться, скоро выложу другую версию.

djet пишет

А ваши расширения точно определяют путь к кэшу?

В данный момент начал переписывать, там будет точно определять.

как вариант  в течение, например, первой минуты каждую секунду в отдельном потоке проверять флаг

Не прокатит. То есть не всегда прокатит. Можно представить ситуацию, когда фокс  и секунды не проработал, например - кривое расширение его убило, или мало ли что еще. Как только флаг появился, его надо снимать тут же, не теряя ни миллисекунды. Иначе можно услышать много нехороших слов в свой адрес однажды... Вот вопрос - а действительно ли один раз только флаг ставится??? Постоянно крутить в цикле этот момент - не очень грамотно. А может можно на долю секунды тормознуть старт браузера, снять флаг, и уже тогда пусть стартует дальше? Тогда не надо ничего больше проверять, фокс всегда будет видеть  на старте правильный мап :) А что после его закрытия будет - неважно, все равно на старте снова обнулит, ПЕРЕД проверкой флага фоксом. Какие будут мысли?
PS хотя зачем ему в течении работы проверять флаг, он же сам его в 1 выставил :) торможу :) Но идея тоже достойная - на старте сбрасывать, до проверки фоксом.

kullibbin пишет

arvin

нормально пропатчился и пока работает

Расскажи, что не так делал, тут же не только мы бываем, мож у кого еще сразу не получилось?

если ты обратил внимание то версии лисы разные, я просто скачал сборку поновее и все пропатчилось

я от 25 числа тоже сборку юзал, проверял - патчится и работает как патченная :) Кстати, что-нить изменилось там за 5 дней?

У меня большие подозрения, что кэш проверяется до инициализации расширений и мучаться сильно не надо, а обнулять просто при старте расширения...

кэш проверяется до инициализации расширений

В этом надо убедиться.

kullibbin пишет

Но идея тоже достойная - на старте сбрасывать, до проверки фоксом.

В моей редакции так и сделано. Там другая проблема: если слишком рано пытаться патчить, то до профильных установок нормальными методами достучаться нельзя, т.к. браузер ещё не "прикрутил" профиль пользователя (поэтому и была затычка с определением папки Cache).

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

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

Я уже думал насчёт вычисления и запоминания кэша -- лишние телодвижения. Всё будет проще. :)

Папка кэша ищется таким образом:
1) browser.cache.disk.parent_directory;
2) в локальном профиле (FF1.1);
3) в профиле (FF1.0).

На каком шаге найдено -- то значение и примет (например, если в конфиге есть browser.cache.disk.parent_directory, то профили не рассматриваются и т.д.)

Делать своё чёрное дело расширение должно лишь однажды, реагируя на смену профиля (т.е. почти на старте).

Если захочется посмотреть "живьём, с комментариями", то about:config, browser.cache.disk.cache_fixer_debug, переключаем в true.

Брать там же.

Смотрелось на: 1.0.4 и 1.1 (20050531), win.

Первый баг-репорт:

[fixer]: Cache dir: C:\Documents and Settings\alcuser\Application Data\Mozilla\Firefox\Profiles\tzbhd1lv.Пользователь по умолчанию

Ошибка: [Exception... "Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [nsIChannel.open]"  nsresult: "0x80520012 (NS_ERROR_FILE_NOT_FOUND)"  location: "JS frame :: file:///C:/Documents%20and%20Settings/alcuser/Application%20Data/Mozilla/Firefox/Profiles/tzbhd1lv.%CF%EE%EB%FC%E7%EE%E2%E0%F2%E5%EB%FC%20%EF%EE%20%F3%EC%EE%EB%F7%E0%ED%E8%FE/extensions/%7Bafcc0bd2-0b43-4a08-9981-afd8f3520e64%7D/components/cacheFixer.js :: anonymous :: line 76"  data: no]
Источник: file:///C:/Documents%20and%20Settings/alcuser/Application%20Data/Mozilla/Firefox/Profiles/tzbhd1lv.%CF%EE%EB%FC%E7%EE%E2%E0%F2%E5%EB%FC%20%EF%EE%20%F3%EC%EE%EB%F7%E0%ED%E8%FE/extensions/%7Bafcc0bd2-0b43-4a08-9981-afd8f3520e64%7D/components/cacheFixer.js
Строка: 76

Явная ошибка открытия файла.
Смею предположить что

Выделить код

Код:

var fileInChannel = Components.classes["@mozilla.org/network/io-service;1"]
                                          .getService(Components.interfaces.nsIIOService)
                                          .newChannel("file://" + cacheMapFile.path, "", null);

            var binaryIS = Components.classes["@mozilla.org/binaryinputstream;1"]
                                     .createInstance(Components.interfaces.nsIBinaryInputStream);

            binaryIS.setInputStream(fileInChannel.open());

стоит заменить на более корректное:

Выделить код

Код:

var ios = Components.classes["@mozilla.org/network/io-service;1"].
      	getService(Components.interfaces.nsIIOService);
      var fileHandler = ios.getProtocolHandler("file").
      	QueryInterface(Components.interfaces.nsIFileProtocolHandler);
      var URL = fileHandler.getURLSpecFromFile(cacheMapFile);
      var uri = ios.newURI(URL,"utf8",null);
      var channel = ios.newChannelFromURI(uri);
      var binaryIS = Components.classes["@mozilla.org/binaryinputstream;1"].createInstance(Components.interfaces.nsIBinaryInputStream);
      binaryIS.setInputStream(channel.open());

у меня так ( не пинайте) :)

Баг в 1.0.4 на Windows.

А, опять эти заморочки FF с non-ASCII. Сейчас поменяем, спасибо.

Как сейчас? (самому ломает ru-RU устанавливать)

Mash
Все проверил. Мегарулезное расширение готово, имхо :)

Под Линухом тоже работает. :)
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050517 Firefox/1.0.4 (Debian package 1.0.4-2)
Поставлю жене, да здравствует модем!

2Mash, может стоит его закинуть на extensionsmirror?

Брать там же.

Готово значит говорите, ничего не порушит? ;)

Не должно порушить. Если есть сомнения - можно делать бэкап профиля периодически.

может стоит его закинуть на extensionsmirror?

однозначно :)
.... а патчи там берут? :P

gass512 пишет

может стоит его закинуть на extensionsmirror?

Куда угодно. Вот только сам я этим заниматься не намерен, во всяком случае, в ближайшее время.

Народ, я нашел баг еще  один. На сайте

http://avril.ru/board/index.php

Заголовок вверху кэшируется, но если некорректно завершить Firefox, он из кэша пропадает. В чем может быть дело? Хотя расширение CacheFixer стоит.

Заголовок вверху кэшируется, но если некорректно завершить Firefox, он из кэша пропадает.

Почитай - я на первой странице топика все подробно растолковал. При некорректном завершении вся накопленная ЗА ЭТОТ СЕАНС информация теряется, предыдущая - остается. То есть выйди нормально, закрой фокс, потом запусти и крэшани. Тогда предыдущая и все более ранние сессии останутся, в том числе и заголовок.

Вот попробовал - походил по сайтам, кэш 50 мегов, заполнен на треть, потом крэшанул, снова походил. Заметил - на всех сайтах, на которых я часто бываю, вся графика осталась на месте, за исключением пары смайликов, которые до крэша еще были :) Всего-то ! Подгрузил через контрол+правый клик, и все пучком :) Для проверки пользуюсь imglikeopera  - там выставил подгрузку картинок ТОЛЬКО из кэша, и время жизни графики в кэше принудительно 3 месяца. Очень хорошо видно, если какая картинка не загрузилась, значит - ее нет в кэше.

Mash
Закинул расширение и патч на этот форум, в расширения файрфокса
http://forum.mozilla.ru/viewtopic.php?pid=24722#p24722
Ты был не против :)

Поставил себе альфу 1,1 - при установке намудрил с расширениями и темами, но cachefixer установил первым. В итоге фокс завис - пришлось процесс прибить. Кэш в целости и сохранности, на 1,1 все работает, лично убедился.

но все-таки это недочет....

Извини, ThreeQ, но эту проблему уже года три или больше не могут (или не хотят) решить сами разработчики, поэтому это к ним. Они не захотели ее решить даже так, как мы это сделали тут.

С Mozilla 1.7.8
не работает
хотя написано в описании расширения

Lockywolf пишет

хотя написано в описании расширения

О каком описании идёт речь?

На главной странице форума:rolleyes:
http://forum.mozilla.ru

А... Ну, это к kullibbin.

Если с некоторых времён ничего не изменилось, то под Mozilla нужно js-инсталлятор написать, добавить пару строк в contents.rdf и протестировать. У меня на это уже просто не хватило времени. Или позже сделаю, или пусть кто-нибудь допишет и протестирует, скажет результаты.

сделай плиз...
трафа не жалко, но скорость это гуд:rolleyes:

Сделаю. Только лучше бы кто-нибудь "опередил". :)

Я как-то запамятовал, что там и jar-то нет.

Можно попробовать сделать таким образом:
-- из архива XPI извлечь cacheFixer.js в папку %mozilla%\components;
-- в %mozilla%\components удалить файлы compreg.dat и xpti.dat (они создадутся заново при старте браузера);
-- попробовать в действии.

Если нужно понаблюдать за процессом в консоли, то открыть cacheFixer.js и закомментировать одну строку:

Выделить код

Код:

_dump: function(msg) {
        //if (!this.debug) return;

(только не забыть потом опять удалить compreg.dat и xpti.dat для вступления изменений в силу).

Должно работать.

Выделить код

Код:

Не найдем сценарий установки

Че то не получается ... кривой я.

Не надо устанавливать всё расширение, нам интересен лишь один файл.  XPI -- это обычный архив, можно даже в .zip переименовать для удобства.

Открываем XPI программой-архиватором, извлекаем cacheFixer.js в %mozilla%\components и т.д.

Да, это уже мой косяк :) Два дня практически не спал.. Имелось в виду, что принцип подходит и к мозилле, и патч для мозиллы тоже существует, а написал, что расширение подходит.. пойду поправлю.

Тогда уж надо будет выложить патч и для мозиллы. Потестируете? Там надо не ехе-шник патчить, а длл-ку.
Вот, тестируйте мозиллу
http://panradio.narod.ru/patch.zip
Разархивировать в папку, куда установлена мозилла, и запускать mozpatch.bat. У меня мозиллы нет, проверить не могу, проверьте кто-нибудь и ответьте, работает ли. Потому что народ требует.

kullibbin
Mash
Положил cacheFixer.js в папку components
Удалил compreg.dat и xpti.dat

как-нибудь расскажу что получится.

kullibbin

Спаать!

1.0, тестируйте.

А changelog есть? :)

+) инсталлятор для Mozilla;
+) ссылка для поиска обновлений.

Ну как, на мозилле работает? Дописать в описании расширения, что ли?

Попробовал в Mozilla 1.7.8RU, Mozilla 1.8b-EN, FF 1.0 - всё работает. УРА! Спасибо большое, а то достал уже этот глюк.

Тот вариант, который - файлы из расширения, вроде бы в Мозилле (1.7.8 оптимизированная djeter, win98) работает. Если дожидаться "естественного" крэша, то можно и за месяц не дождаться. Несколько раз закрыл Мозиллу по CTRL ALT DEL в двух профилях с двумя кешами. Сейчас назначил оба кеша на одну папку - раз уж они разучились самоликвидироваться - пусть будут в одном месте. Понаблюдаю ещё недельку, а потом поставлю cachefixer-current.xpi

Ставить патч вместе с расширением вроде бы нет необходимости. Если только что-то со временем проявится.

Спасибо.

1.7.8
вроде работает при килянии
спасибо

Попробовал в Mozilla 1.7.8RU, Mozilla 1.8b-EN, FF 1.0 - всё работает. УРА!

Соответственно поправил в описании патча
http://forum.mozilla.ru/viewtopic.php?id=3307

2.0: хелп, более быстрая работа (как у alc, а то с массивами тормознуто), возможность периодического "сброса" данных кеша из памяти на диск. Почти не тестировал, так что проверяйте, кому интересно.

Mash пишет

2.0: хелп, более быстрая работа (как у alc, а то с массивами тормознуто), возможность периодического "сброса" данных кеша из памяти на диск. Почти не тестировал, так что проверяйте, кому интересно.

Итак, большой геморрой:  при запуске браузера почему то удаляются все куки, на панели инструментов заботливо расставленные значки так же вернулись  в места по умолчанию
поставил галочку "выводить инфу в консоль" но ничего так и не увидел, пока вернулся на версию 1.0

arvin
Попробуй отлючить "Сохранять кеш ......" т.е поставь в 0.
Mash
После сохранений пропали список сайтов, которым разрешено уситанавливать ПО, и TabMix не восстанавлвает сессии.
.... и куки тоже пропали.

Хммм... Ладно, будем думать.

Здесь лежит другая версия, но предупреждаю сразу: качайте и пользуйтесь только если у вас есть реальная необходимость в сохранении текущего состояния кеша с определённым интервалом времени. Перед "употреблением" желательно ознакомиться с этим постом (или хотя бы последними двумя-тремя его абзацами).

Тестеры приветствуются. Чем раньше я узнаю о том, что эту часть расширения можно выкинуть в корзину и не забивать себе голову, тем лучше.

Mash

установил, вроде работает за исключением "Выводить инфу в консоль"
галочка стоит а я так ничего и не увидел
есть подозрение что сохранение на диск так же не пашет, во всяком случае последние посещенные перед крешем страницы не открываются, ставил "сохранять через каждую минуту"

Сейчас на чистом профиле попробую, м.б. я перемудрил там чего.

Чистые
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.7.8) Gecko/20050511 Firefox/1.0.4
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.8b2) Gecko/20050531 Firefox/1.0+
работает.

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

Извеняйте, действительно работает, моя невнимательность :)

Вести с полей.
У меня пока по-прежнему тот же вариант Cachefixer (и Мозилла 1.7.8 естественно).
Файлы кэша не удаляются и потихоньку прирастают, но открыл сегодня about:cache и увидел там только "Memory cache device" с элементами интерфейса в нём.

"Disc cache device" нет вообще. Значит, файлы физически есть, а Мозилла их не видит?

Ссылки из истории тоже не открываются.
Да, и сейчас при открытии форума картинки точно заново начали грузиться.

Это после нормального завершения работы вчера, хотя позавчера комп отрубался при открытых страницах.

Вот, может повлияло. Нортоновский Диск Доктор запустил как раз сегодня и он исправил на диске G (где у меня профили и кэш) "свободное место", "потеряные кластеры" и ещё что-то.

Так, вспомнил - у меня же 2 рабочих профиля и во второй Cachefixer не ставил, а кэш в одной папке у обоих профилей. Может второй профиль там что-то сковырнул, но почему тогда не удалил файлы...

Полноценно оценить не могу , просто описываю то, что вижу - может сгодится.

Сейчас поставлю во второй профиль
http://imfo.ru/download/jscript/cachefixer-current.xpi

Кстати, лучше бы номера версий были в имени файла.

+--+--+--+--+--+
Добавка.
Про второй профиль вспомнил зря - cacheFixer.js же стоит глобально.

Присмотрелся к папке профиля - а она как раз достигла лимита. Может в момент достижения лимита что-то там стукнулось лбом об стенку и дисковый кэш отключился? Старые файлы не удаляет, новые не принимает? В настройках и дисковый и кэш памяти "true".

Один раз вышел в инет, открыл штук 67 страниц, в about:cache по-прежнему только "Memory cache device" с 8 мб занятыми и 4 мб свободными.

Факт, конечно, малоприятный. Чего-то подобного я и боялся. Т.к. Moz/FF особо не пользуюсь, на различные замеры и эксперименты меня сейчас не хватит просто физически, какую-то оценку тоже затрудняюсь дать. Остаётся только сожалеть и ждать от других сообщений/подтверждений о этого поведения.

По поводу названия: я в одно время намучался поддерживать разные ссылки, говоря посетителям, мол, "туда не ходи, сюда ходи". Current он и в Африке current. Скачал? Скачал последнюю, стабильную, версию. Линк на update есть. Если появляется стабильная версия посвежее -- автоапдейт.

Mash
Ну пока я не уверен, что дело в cacheFixer
как-то раньше за кэшем не присматривал.

Кстати, кэш отказался очищаться средствами браузера.

поставил cachefixer-current.xpi

Продолжаю наблюдение.

Current он и в Африке current.

Дело, конечно, хозяйское, только у разных авторов по-разному получается, то хостинг сменится, то уйдёт в ... другую работу, а расширение кто-то другой подхватит, положит на др хостинге и в конце-концов, - путаница.
То есть в принципе для постороннего человека как раз и не ясно будет этот Current тот же самый или уже другой. Мне пришлось делать папки с датами скачки.

Ну, если версия так значима, то отслеживать можно здесь.

vladmir пишет

Кстати, кэш отказался очищаться средствами браузера.

Вот такого точно не наблюдал.

Mash

отслеживать можно здесь.

Вот это правильно!
http://downloads.mozdev.org/imglikeopera/cachefixer-1.0.xpi

Вот такого точно не наблюдал.

Аналогично. В смысле - до того.

Так дисковый кэш тогда похоже вообще вырубился.
"Disc cache device" в about:cache вообще не было, как будто Мозилла забыла о существовании кэша.

Может в _CACHE_MAP_ что-нибудь отметилось ...

Файлы в кэше удалил все вместе с  _CACHE_MAP_ , _CACHE_001_ ...
Потом после перезапусков создались нулёвые.

Уменьшил кеш до 5 мб чтобы быстрее повторить.)))

Mash

И опять не знаю имеет ли отношение cachefixer к поведению кэша.
История такая.
Нормально работаю, кэш на диске назначен 5 мб, в папке - 6,8 мб., кэш памяти 14 мб полностью занят. По ощущениям - всё работает нормально, не смотря на переполненность кэша. И тут по призыву одного доброго самаритянина три раза заглядываю на глючный "обзори ру". Два раза Мозилла "совершила недопустимую... ", третий - просто зависла, сохранил страничку др. браузером и ещё раза три, пока разобрался, открывал с диска.

После крэша (шестикратного).
В папке - 6,8 мб
В about:cache - обе записи
Memory cache device - мелочь всякая - не важно.
Disk cache device Storage in use: 5116 KiB

Переключаю в офлайн, открываю Disk cache device
Number of entries:     1092
С помощью Linky пачками открыл примерно половину (по ползунку скроллбара) объектов . Очень грубо, но тенденция понятна - примерно 400 объектов из списка Disk cache device недоступна, открылись 10
css,  js;  60 мелких картинок (в основном - аватары, смайлики и мелкие детали сайтов), 7 пустых gif. Страница HTML была одна из крэшевой сессии, но и она была перепутана с картинкой. Таких перепутанных объектов оказалось примерно 15. То есть, на стр
about:cache?device=disk
запись
  Key: http://forum.mozilla.ru/img/smilies/hmm.png
открываю ссылку, а там полная запись на
key:    http://forum.mozilla.ru/viewtopic.php?id=3568
и дальше по ссылке ничего.
Соответственно в истории некоторые забавные записи.

В общем, при кэше больше назначенного, после крэша, в дисковом кэше точно меньше 800 кб полезных файлов из 6,8 мб занятого места. Страницы из истории не открываются (до крэша открывались прилично). Получается, при крэше файлы остаются на месте, но помечаются как недоступные или что-то в этом роде?

Попробую ещё вариант. Очистил кэш (из интерфейса)) поставил 20 мб, попробую как-нибудь покрэшить не доходя до заполнения папки.

Не знаю как и комментировать. :/

Кстати, молчание остальных пользователей вызывает некоторое любопытство: или никто не пользуется, или редко падают, или не следят так пристально, или...

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

я один раз пропатчил, и больше ничего не делал. пристально за кешем не слежу, но если FireFox упадет, то всегда проверяю, открываются ли страницы из журнала в оффлайне. вроде бы кеш на месте :) Падал Firefox где-то раз 5.

Вроде работает, и ладно.

Ну, значит остановимся на том, что если кого-то работа устраивает и возможности/полезность расширения перевешивают его недостатки, тот пользуется. В противном случае -- не пользуется. Если будет найдена причина какого-то конкретного плохого поведения (хотя какая там может быть причина,.. всё и так предельно просто; здесь уже идёт сама логика движка, с этим я ничего поделать не могу), то поправим.

К сожалению, предложить что-то лучше я не в состоянии.

или...

Ну я бы предпочёл, чтобы только у меня была такая ерундистика, а у всех - нормально. В общем-то, кэш меня не напрягает - всё, что интересно сразу сохраняю в тематические папки, после редких крэшей "восстанавливаю" сессию по истории, одноразово просматриваю много сайтов с большими картинками (фото) - их и хранить-то не надо. Единственное, что не помешало бы - сохранить бы в кэше некоторое кол-во картинок с нескольких буквально сайтов. Как в менеджере куков...

Может быть, ещё какие-то расширения влияют.
В настройках у меня "when the page is out of date"

Кстати, молчание остальных пользователей вызывает некоторое любопытство: или никто не пользуется, или редко падают, или не следят так пристально

Например, такая версия - часть кэша сохраняется, если кэш большой то это всё-равно помогательно. Из 50 мб останется 5 мб доступных и кажется, что всё на месте.
Может в Файрфоксе уже что-то подправили - на нём в инет оч редко хожу.

С другой стороны, расширение само по себе простое, ломаться там особо и нечему

Что-то мне не попадалось подробных описаний работы кэша - как он себя ведёт в разных условиях.
Вот например, после крэша объект находится в папке, но в about:cache о нём нет подробной записи с датами и т.д. - он когда-нибудь будет удалён и замещён другим объектом или так и останется там навсегда?
Без cachefixer такой объект будет удалён со всем "корумпированным" кэшем, а с ним останется. Если он всё же будет удалён когда-нибудь - не проблема, а если нет, то со временем большая часть дискового кэша будет занята впустую и в работе будет главным образом кэш памяти.

или не следят так пристально

Вот простой способ проверки для других:
1) начать новую сессию
2) переключиться в офлайн
3) пройтись по всем или многим ссылкам в "истории" за неск дней, запоминая какие стр открываются, какие - нет.
4) отрубить браузер через ALT CTRL DEL
5) запустить - закрыть
6) запустить - переключиться в офлайн
7) пройтись по тем же ссылкам в истории
Если всё открывается одинаково - нет проблем.
alcher

я один раз пропатчил ... вроде бы кеш на месте

Ты о расширении cachefixer от Mash или о патче от kullibbin?
Патч я как-то и не пробовал ещё.
И был ли кэш заполнен полностью. Может быть это имеет значение?
Mash
Расширение и патч полностью взаимозаменяемы или что-то делают по-разному?

P.S. Это ж я не наезжаю и претензий никаких - просто интересно въехать что за рекбус-кроксворд. Да и разработчики расширений редко живьём подворачиваются, а то бы и другим фидбаков досталось. :)

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

vladmir, патч, который от kullibbin

vladmir пишет

...на нём в инет оч редко хожу...

Вот и я. Так что тестирование -- это не по моей части. :)

vladmir пишет

Что-то мне не попадалось подробных описаний работы кэша - как он себя ведёт в разных условиях.

Можно попробовать поковырять исходники, но на это у меня нет времени.

vladmir пишет

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

Вроде бы "бито-старые" объекты рано или поздно удаляются, но сам я не проверял.

vladmir пишет

Патч я как-то и не пробовал ещё.

Боюсь, что проблема останется, т.к. хоть там и разная реализация, но итог один: битые объекты останутся в кэше.

Проделал "простой способ проверки для других"
1) начать новую сессию
2) переключиться в офлайн
3) пройтись по всем или многим ссылкам в "истории" за неск дней, запоминая какие стр открываются, какие - нет.
3+)  закрыть - запустить (чтобы выгрузить из кэша памяти)
4) отрубить браузер через ALT CTRL DEL
5) запустить - закрыть
6) запустить - переключиться в офлайн
7) пройтись по тем же ссылкам в истории

По такой схеме при первом проходе по "истории" открылись 122 вчерашние страницы, не открылись штук 15 с Руборда (там запрет кэширования). После ALT CTRL DEL открылись все те же страницы.
Предположения:
1) по ALT CTRL DEL - это хреновый какой-то крэш
2) всё-таки имеет значение переполнение заданного размера кэша (в этот раз дисковый назначен 20 мб, в папке - 9,5 мб, кэш памяти - мало).

Столкнулся с проблемой потери кэша обсуждаемой тут...
Порочитал
Закачал Фиксер 1.0 и патч. Чем посоветуете воспользоваться?
Наличие кэша для меня критично, скажем так.
Версия 1.0.6 (фиксер уже установлен, но ФФ не перезагружал ещё :) )

Крыска
Мне фиксера хватает. Хотя, если ты поставишь патч, ничего не случится, так как

Расширение можно применять совместно с патчем, конфликтов не будет.

Привет всем. Давно тут не был, да и вообще давно с компа в инет не выходил, погулять, по делу только.
Насчет патча - этот вариант имхо - предпочтительнее, так как будет работать всегда и везде, не важно, какой профиль, не важно, какие глюки, а то может быть так, что упали все расширения, и фокс упал, и кэшу хана... теоретически такое тоже возможно. В остальном принцип работы тот же, и у фиксера, и у патча.
Дальше, по поводу "поломанных" объектов в кэше - там не очень понятный принцип очистки кэша от старых данных, но я на первой странице описал, что я делал, чтоб проверить работу кэша при падении, короче, у меня тоже была ситуация, когда кэш как бы заполнен, а объектов там почти нет, но стоило еще походить по нету, и появлялись новые объекты, и все приходило в норму. При этом общий размер особо не возрастал. Я там все описал с цифрами, кому интересно, почитайте.
По трем клавишам убиение процесса firefox.exe - это самый нормальный вариант креша, смысл в том, чтоб не дать браузеру закрыться правильно, а оборвать его работу. Так что проблем с кусками битых объектов в кэше нет.

Расширение можно применять совместно с патчем, конфликтов не будет.

Да, только расширение будет работать впустую, так как уже стоит патч :)

А когда ж Вы Firefox 1.5 спасать будете? Я без fixer'а жизни не вижу, и от поседнего Fox'а отказываться тоже не хочу. А кэш падает и падает :(

да с кэшем просто косяк, очень напрягает

NCom
CacheFixer поставь - я не напрягаюсь.

У меня под ФФ 1.5.0.4. CacheFixer не ставится. Так и должно быть? Есть ли более новая версия расширения?

Consul
Нет

:cry: надо срочно для лисички 1.5.0.6, заплаточку, кто умеет пожалуйста

nуma-
Ставь обычный CacheFixer через Nightly Tester Tools

Как поставить cache fixer 1.0 под FF 2.0??? Так просто не ставится, отключил проверку на совместимость - он в списке появляется, но написано "Не совместим в FireFox 2.0". Ставлю nightly tester tools, через контекстное меню делаю его совместимым. Все, браузер на него не ругается, НО кеш все равно слетает.
Открываю страничку, пару картинок отображаю, потом вбиваю другой адрес, ползаю, вбиваю опять первый адрес - картинки на месте. Открываю на этой вкладке какой-нибудь левый сайт, ctr+alt+del , убиваю процесс firefox.exe. Загружаю страничку - картинок нет :(
Что делать?

я под лисичку 2.0 рс3 поставил и норм... на ура робит... потом напишу как ставил... если не опередят или не забуду...

я под лисичку 2.0 рс3 поставил и норм... на ура робит... потом напишу как ставил... если не опередят или не забуду...

Выложите кто-нибудь, кто не забыл ;), патч или раскажите что изменить для FF 2
(Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1) Gecko/20061010 Firefox/2.0)
cache fixer не работает...

kluver
по аналогии делаем то же самое (см. мои советы)
http://forum.mozilla-russia.org/viewtopic.php?id=14689
Либо, как тут выше советовалось "Ставь обычный CacheFixer через Nightly Tester Tools"
Nightly Tester Tools - расширение такое.

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

еще вопрос, байт 000F нужно изменять на 0 после каждого запуска FF?

kluver
(ну ты спросил,я уже к НГ готовлюсь, выпимши...)
На счет кеша и сессии - у меня установлен TabMix Plus - он отвечает за восстановление ссейсий. Т.е. встроенный в ФФ 2.0 сохранитель сессий отключен. Кеш-фиксер не установлен. Срубил процесс ФФ в диспетчере задач (кеш полностью очишается) - при запуске ФФ ТабМикс предложил восстановить поврежденную сессию - значит, скорее всего, она сохраняется не в кеше.

байт 000F нужно изменять на 0 после каждого запуска FF?

Читаем самое начало этой темы:

После запуска фокса надо в файле %ProfilePath%\Cache\_CACHE_MAP_ обнулить байт по адресу 000F. Это и есть тот самый флаг. Файл на запись доступен при работающем фоксе. То есть, что бы не случилось, при выходе фокса этот бит будет нулевым, и при последующем запуске фокс ничего не станет удалять из кэша! Вручную все проверено, работает на-ура.
Осталось написать расширение, которое это будет делать, и проблема будет навсегда решена

Собственно, это принцип работы кеш-фиксера - всегда обнулять этот байт. Т.е. кеш ни при каких условиях автоматически не будет очищаться, в случае некорректного завершения (и т.п.) работы ФФ.

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

Попробовал Cache Fixer — не работает. Весь кэш всё равно тянется заново (во всяком случае, загруженные видеоролики не сохраняются).

MySh

Попробовал Cache Fixer — не работает. Весь кэш всё равно тянется заново (во всяком случае, загруженные видеоролики не сохраняются).

Cache Fixer работает, но кэш текущей сессии (некорректно завершенной) теряется.
Есть еще Cache Fixer 2.0, где сделано сохранение кэша на диск с заданной периодичностью, но у меня его работа приводила к регулярным падениям Firefox (но кэш таки сохранялся :D). Впрочем, сам автор отмечает возможные глюки...

Infocatcher

кэш текущей сессии (некорректно завершенной) теряется.

Так ведь это же самое главное! Иначе зачем он нужен тогда вообще?

Так ведь это же самое главное! Иначе зачем он нужен тогда вообще?

Чтобы не терять сразу весь кэш. На dial-up'e, например, очень нужен ;)
«потерять кэш лишь одной сессии и поиметь пару-тройку (даже десятков) «лишних» мегабайт гораздо лучше, чем потерять всё»

Народ, а зачем так мучиться, если можно нормальный внешний кэш поставить?!

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

Forest

Народ, а зачем так мучиться, если можно нормальный внешний кэш поставить?!

Какой ещё «внешний кэш»?

Al_H

Но если у браузера есть функция, она должна работать - хотя бы на своем уровне.

Согласен:beer:
Но если она таки так не работает - можно не пытаться найти обходные пути, а воспользоваться работающим внешним решением ;)

MySh

Какой ещё «внешний кэш»?

Это вроде называется "кэширующий прокси".
Например я использую HandyCache.

А для windows 7 как сделать чтоб заработал этот фикс??
У меня в ХР всё работало,перешёл на windows 7,перенёс профиль лисы,так теперь кеш не сохраняется вообще никогда! Т.е. не только после аварийного завершения,а и после обычного.
Каждый день гружу по новый всё(( что делать?

скажите пожалуйста!!!у меня windows 7x64,как мне в лисе ез его кеша вытащить!!!файлы tmp???