Pull to refresh

Тюнинг Firefox для любителей Оперы

Reading time5 min
Views20K
Здравствуйте.
Я являюсь пользователем Оперы уже около 5 лет, но при разрабoтке страниц я пользуюсь Firefox'ом т.к. он предлагает мне более удобные средства для отлова ошибок, валидации и т.п., к тому же это полезно, если каждодневный брaузер и рабочий инструмент различаются.
Но дело в том, что в Файрфоксе при всех его преимуществах, настройки по умолчанию заставляют оперопользователя все время чувствовать себя как в гостях. Я не говорю здесь о интерфейсе, а именно о поведении браузера. Я попытался изменить это и вот шаги которые я предпринял:
UPD: пока писал, то топик так увеличился, что его можно скорее назвать пособием для тюнинга Firefox — загляните внутрь даже если вы не оперщик. Если же вы матерый пользователь FF, то добро пожаловать с вашими уточнениями и комментариями :)

Введение: все что я делал я тестировал на Firefox 3.0.5 с Интернетом 16 МБ/с, CPU Core Duo 6300 и 4 ГБ оперативки. Может быть что на вашей конфигурации вы достигнете совсем других результатов. Почти все изменения проводятся в about:config, если вы не уверены что опция вам нужна, лучше не меняйте ее.


Быстрая Навигация


Что более всего мне мешало, так это то, как Опера и Firefox ведут себя при навигации Вперед/Назад — Опера мгновенно показывает все, как бы вы глубоко не перемещались по истории таба. Firefox же, как будто одержимый IE, зачем-то загружает большинство страниц опять из интернета, соответственно о мгновенности речь идти не может. К тому же, если вы заполняли форму в Опере, и вернулись к ней с помощью команды Назад, все заполненые вами поля (кроме password) останутся заполненными, но т.к. Firefox перезагружает страницу данные будут утеряны.
Я хотел чтобы при возврате назад браузер не перезагружал страницу, а показывал мне именно ту, которую я видел перед этим. Если честно, то Опера своим поведением нарушает RFC (раздел 14.9.2 RFC 2616). Например если вы были 'залогинены'на странице а потом вышли, вы сможете нажать Назад и увидеть ее содержимое. Это можно рассматривать как нарушение безопасности, представьте себе компьютер в интернет-кафе в котором вы смотрели почту и ушли, а другой пользователь начнет нажимать назад.

Но мы ведь опытные пользователи и знаем что делаем, поэтому поехали:

Включаем Fastback:


browser.sessionhistory.max_total_viewers
Здесь задаются настройки Fastback — это количество страниц, которые сохраняются в памяти для быстрого перехода коммандами Вперед/Назад.
По умолчанию здесь -1, соотв. браузер сам решает сколько страниц сохранять в зависимости от оперативной памяти:
RAM	Страниц
32MB 	0
64MB 	1
128MB 	2
256MB 	3
512MB 	5
1GB 	8
2GB 	8
4GB 	8 

У меня 4 GB оперативки — я выставил этот параметр в 15 — мне памяти не жалко.
Обратите внимание, этот параметр задает количество страниц не для таба, а вообще для броузера.

Настраиваем кэш


browser.cache.check_doc_frequency
По умолчанию стоит 3, т.е. обновлять кэш, опираясь на Last-Modified и Control-Cache заголовки. Предлагаю изменить значение на 0, тогда Firefox будет обновлять кэш страницы при каждом новом запуске браузера.

Опера вообще игнорирует настройки кэша при навигации Вперед/Назад, чтобы обновить страницу, необходимо исполнить Refresh или Reload. Firefox ведет себя более последовательно, а именно:
  • Cache-Control: no-cache Firefox не будет хранить страницу на диске, но она будет сохранена в memory cache и. например, при команде Назад, будет показана страница из кэша.
  • Cache-Control: no-store страница не будет сохранена ни в памяти ни на диске, и при любой попытке показать ее будет исполнен полный POST/GET запрос

Информация отсюда:
restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=981443
blog.httpwatch.com/2008/10/15/two-important-differences-between-firefox-and-ie-caching


Это все было бы отлично, но многие сайты злоупотребляют Cache-Control: no-store, в результате тратится время пользователя и траффик. К сожалению вышеназванная опция (browser.cache.check_doc_frequency) не отключает такое поведение браузера, соответственно если вам нужно полное соответствие поведению Оперы необходимо пользоваться софтом который изменяет заголовки, например Proxomitron'ом

Увеличиваем обьем памяти для кэша:


browser.cache.memory.capacity
Текущее использование можно посмотреть здесь: about:cache?device=memory
У меня он был установлен по-умолчанию в 30МБ, я увеличил до 96, но изменений не заметил.

Список закрытых табов:


browser.sessionstore.max_tabs_undo
В Опере, я привык закрывать табы без лишней мысли, ведь у меня есть длиннющий список закрытых страниц.
Непонятно почему, но в Firefox он по-умолчанию ограничен 5, поменял на 30.

Паралельные запросы HTTP 1.1


network.http.pipelining
Вкратце: эта опция разрешает в одном и том же соединении с сервером посылать одновременно несколько запросов паралельно, а не последовательно(ожидая ответа на предыдущие). Подробнее: www.mozilla.org/projects/netlib/http/pipelining-faq.html
У Оперы pipelining включен по умолчанию, поэтому включаем его и мы. Для того чтобы параллельные запросы могли работать необходимы Keep-Alive (network.http.keep-alive=true) и HTTP 1.1 (network.http.version=1.1).

Максимальное количество паралельных запросов


network.http.pipelining.maxrequests
Некоторые руководства рекомендуют ставить количество максимальных запросов в 30. Я бы этого вам не советовал, спецификация HTTP/1.1 не ограничивает число запросов, но рекоммендует 2 вообще для Keep-Alive. Я оставил значение по-умолчанию — 4.
UPD: Как уточнил Alaunquirie, в Firefox, вообще стоит внутреннее ограничение этого параметра до 8.

Максимальное количество соединений с сервером


network.http.max-connections-per-server
Если вы здесь выставите слишком большое число, то некоторые серверы могут определяют такое количество запросов от вашего IP как DDOS атаку и ваши запросы в лучшем случае будут обработаны по очереди, а в худшем ваш IP получит бан и вам придется ждать пока вам опять не разрешат доступ.
Я поставил его в 8(я встречал именно это значение на сайтах по настройке Оперы), хотя в FF 3 по умолчанию 15.

Максимальное количество постоянных(открытых) соединений с сервером


Network.http.max-persistent-connections-per-server
Как я писал выше, RFC2616 рекоммендует максимум 2 Keep-alive запроса. В Firefox 3 по-умолчанию стоит 6, пусть так и остается.

Максимальное число соединений:


network.http.max-connections
Ограничивает число максимальных одновременных соединений Огненного Лиса. Его можно спокойно поднять, если у вас быстрый интернет и вы любите наоткрывать вкладок на заднем фоне, которые грузятся пока вы продолжаете смотреть основную страницу. У меня он установлен с 16МБ/с интернетом в 64.

Задержка стартового рендеринга страницы


nglayout.initialpaint.delay
Если в Опере вы включали такой параметр как Browsing->Redraw Instantly то вам имеет смысл это сделать и в Файрфоксе. Этот параметр определяет, через какое время после того как получена первая информация, начинать рендеринг. Имеет смысл на быстрых каналах. Недостаток — страница может перерисовываться чаще.
Значение по-умолчанию 250мс, я установил в 0 и доволен.

Осталась совсем малость:


Я привык к быстрому поиску в Опере по нажатию '.' или '/' и ',' для поиска в URL.
В Firefox подобное существует по F3 или Ctrl-F, но меня раздражало то что панелька не пропадала после поиска, плюс когда я опять вызывал поиск в нем находилось старое значение и мне приходилось его стирать.
Погуглив, я нашел что был слишком ленив — при нажатии '/' поиск на странице ведет себя точно так же как и в опере ( а апостроф — ' ищет в ссылках).
Я попытался было установать привычные мне запятую и точку, но с удивлением понял что в Firefox нельзя менять настройки клавиатурных сокращений!
Но так как это FF, то я нашел аддон keyconfig, который добавляет возможность редактирования сокращений. К сожалению в нем нет комманд для QuickFind, и их надо создавать самому — жмем в keyconfig на «Add a new key» и добавляем:
  • Для обычного QuickFind:
    gFindBar.startFind(gFindBar.FIND_TYPEAHEAD);
    gFindBar._setFindCloseTimeout();
  • Для QuickFind по ссылкам:
    gFindBar.startFind(gFindBar.FIND_LINKS);
    gFindBar._setFindCloseTimeout();

И назначаем привычные нам клавиши.

Я пока не придумал, что бы мне изменить еще, но с удовольствием пользуюсь настроенным таким образом Firefox'ом.

upd
В Опере я очень часто пользуюсь коммандой контекстного меню для выделенного текста «Go to Web Address», которая вставляет этот текст в адресную строку и переходит по URL/ищет в поисковике. Благодаря комментирующим я нашел замечательный аддон для FF URL Link, который не только добавляет такую функциональность, но и предоставляет дополнительные возможности и опции для тонкой настройки.

Tags:
Hubs:
+50
Comments66

Articles

Change theme settings