Ця стаття, трохи вибиває з основної концепції сайту , Присвячена способам відновлення попередньої сесії з відкритими вкладками в гаряче улюбленому браузері Mozilla Firefox. На даний опус мене наштовхнула вже кілька разів зустрічається проблема втрати всіх відкритих вкладок внаслідок некоректного завершення (з різних причин: починаючи від відключення електрики, закінчуючи вичерпанням доступної пам'яті і зависанням системи) роботи браузера Mozilla Firefox
Механізм автоматичного відновлення попередньої сесії (Session Restore) з'явився ще в 2-ій версії браузера. Firefox в спеціальному файлі (sessionstore.js) зберігає всі відкриті вікна і вкладки, в тому числі url сторінки, розмір і позицію вікна / вкладки і набрану в текстових полях інформацію. Після аварійного завершення роботи на підставі даних у файлі, Firefox автоматично намагається відновити попередню сесію, відновлюючи всі відкриті вікна і вкладки, які були відкриті до несподіваного падіння браузера. Якщо падіння відбувається вдруге, то при старті Firefox з'являється вікно з написом:
Firefox може відновлювати всі вікна і вкладки, які були відкриті під час останнього закриття або несподіване падіння Firefox.
Ой, ось невдачаПри відновленні ваших вікон і вкладок у Firefox виникла проблема. Це може бути викликано недавно відкритої веб-сторінкою.
Ви можете спробувати:
- Видалити одну або кілька вкладок, які, на вашу думку, можуть викликати проблеми
- Почати абсолютно нову сесію
Якщо відзначити раніше відкриті вкладки, які потрібно відновити і натиснути кнопку «Відновити» Firefox відкриє ці веб-сторінки.
Якщо вікно «Відновлення сесії» автоматично не з'явиться, його можна спробувати викликати, вибравши пункт меню Журнал -> Відновити попередню сесію.
Примітка. Це ж вікно можна викликати, набравши в адресному рядку браузера about: sessionrestore.
Якщо меню «Відновити попередню сесію» неактивно (як на скріншоті), швидше за все щось пішло не таки доведеться перейти до більш «просунутим» способам відновлення вкладок.
В першу чергу розповімо про механізм резервного копіювання відкритих вкладок і вікон в Firefox. Інформацію про поточну сесії Firefox зберігає у файлі sessionstore.js, який знаходиться в каталозі профілю користувача (C: \ Users \ username \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ xxx.default - в Windows 7 і 8, або c: \ Documents and Settings \ username \ Application Data \ Mozilla \ Firefox \ xxx.default в XP). Якщо в процес роботи з Firefox простежити за зміною його розміру, можна помітити що при відкритті нової вкладки / вікна його розмір збільшується, а при закритті - зменшується.
Після «падіння» Firefox намагається автоматично завантажити інформацію про відкриті вкладки до іншої та вікнах з файлу sessionstore.js. У тому випадку, якщо файл пошкоджений, недоступний, має некоректний формат або браузер з якоїсь незрозумілої причини його «не бачить» - Firefox запускає нову «чисту» сесію, а пункт меню «Відновити попередню сесію» стає недоступний. Однак не варто впадати у відчай - є ще кілька способів відновити список раніше відкритих файлів.
Справа в тому, що в цьому ж каталозі профілю, в папці sessionstore-backups, знаходиться файл recovery.js (recovery.bak), який містить інформацію про попередньої сесії Firefox. Цей файл є копією файлу sessionstore.js, який автоматично створюється в тому випадку, якщо останній раз робота Firefox була завершена з помилкою.
Важливо. Перш ніж переходити до ручних методів відновлення, обов'язково створіть резервну копію файлів і sessionstore.js і папки sessionstore-backups, скопіювавши їх в довільний каталог.
Закрийте Firefox і перейменуйте файл recovery.js (recovery.bak) в sessionstore.js (із заміною), після цього спробуйте запустити Firefox. Подивіться, чи вдалося відновити дані про попередньої сесії.
Рада. У цій же папці знаходяться файли формату upgrade.js-ГГГГММXXXXXXXX - це більш ранні копії відкритих сесії. Подивіться на дату створення цих файлів, якщо вам влаштує відновлення сесії за цю дату - спробуйте перейменувати файл upgrade.js-ГГГГММXXXXXXXX в sessionstore.js і запустити Firefox.
Якщо і цей спосіб не допоміг, можна спробувати витягти список URL з файлів sessionstore.js. Формат файлу досить специфічний - при бажанні, звичайно, можна і вручну проаналіщіровать вміст файлу, і знайти всі відкриті сторінки, які містяться в конструкціях починаються з «url»: »http, але цей шлях досить виснажливий і трудомісткий.
Спробуємо трохи автоматизувати методу вилучення url з файлу:
- В першу чергу потрібно встановити розширення Firefox для веб-розробників: Firebug (Firefox -> Доповнення -> Пошук серед доповнень -> Firebug -> Встановити).
- Потім знайдіть раніше скопійований файл sessionstore.js і перейменуйте його в sessionstore.txt.
- Відкрийте цей файл за допомогою браузера (Firefox-> Нова вкладка -> Відкрити файл, вказуєте шлях до txt файлу).
- Запустіть консоль Firebug (Firefox-> Веб-розробка-> Firebug-> Відкрити Firebug)
- У самому низу вікна є консольна рядок (на скріншоті відзначена червоним прямокутником). Скопіюйте в неї наступний js код: javascript: (function () {var D = document, H, i = j = 0, P = D.getElementsByTagName ( 'PRE'), t = '', R = / [^:] \ { "entries": \ [\ {( "url": "([^"] *) ") \, (" title ":" ([^ "] *)") {0,1} / g, T, U; for (j = 0; E = P [j]; j ++) {H = E.innerHTML; while (R.exec (H)) {U = RegExp. $ 2; T = RegExp. $ 4; if ( T.length == 0) {T = U;} t + = '<b> [' + (++ i) + '] </ b> <a href='+U+'>' + T + '(' + U + ') <\ / a> <br>';}} with (window.open (). document) {write (t); close ()}}) (); І натисніть Enter.
- Після чого повинна відкритися нова вкладка, на якій будуть присутні всі посилання, який скрипт «витягне» з файлу відновлення сесії Firefox (як перемогти кодування з російськими title - я розібратися не зміг 🙁).
- Відкрийте потрібні вам посилання.