跳转到内容

使用 Firefox/高级

来自维基教科书,开放世界中的开放书籍
章节: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14

about:config

[编辑 | 编辑源代码]

在基于 Gecko 的浏览器中,如 Firefox、SeaMonkey 及其衍生产品,about:config 是一种强大的方法,可以以偏好设置页面(早期的“选项”窗口)通常无法访问的方式调整偏好设置。

与 Firefox 用户界面一样,about:config 中的偏好设置仅适用于活动浏览器配置文件。不同的用户配置文件可以具有不同的偏好设置;尽管大多数设置在配置文件之间是相同的。

在 Firefox 地址栏中输入 about:config,按 Enter/Return,您可能会首先看到一个页面,警告您这些是高级设置,更改其中一些设置可能会破坏 Firefox 的工作方式。有一个“继续”按钮和一个复选框,表示不再显示警告页面。单击“继续”按钮后,您将被带到 about:config 设置页面。

顶部有一个搜索栏,允许通过过滤列表来查找正确的偏好设置。将偏好设置名称复制并粘贴到搜索栏中,可以轻松找到正确的偏好设置。

用户会看到一个基于表格的偏好设置列表,显示其名称、状态、类型和值及其各自的列。通过单击每列的标题,可以按升序和降序对列表进行排序。可以通过单击设置一次来将光标焦点移动到列表中,然后使用键盘导航键(向上、向下;Page Up、Page Down;Home、End)在列表中移动。

大多数 about:config 偏好设置是内置的并显示出来。一些偏好设置是隐藏的,必须由用户添加。其他偏好设置是由安装的扩展程序创建的,例如 NoScript。

偏好设置状态可以是以下之一

  • 默认
  • 已修改 - 如果从其默认值更改,则整行将以粗体显示
  • 已锁定 - 以斜体显示。此状态很少见,旨在防止偏好设置被轻易更改。设置通常由 Linux 发行版(例如,为了防止遥测)或系统管理员(通常在公司环境中)锁定。

偏好设置类型可以是以下之一

  • 布尔值 - 真/假设置;
  • 整数 - 从 0 到某个大数字的完整数字。编号的值可以并且确实具有不同的单位;
  • 字符串 - 这可以是任何形式的文本或数字,尽管每个文本字符串通常都有自己的语法,如每个偏好设置所需的。

可以通过双击可用选项之一或选择它们并按 Return/Enter 键来进行更改。

这样,通过双击或 Enter,布尔值被切换,因为它们只有一个真或假的值,因此最容易更改。其他偏好设置类型被修改,在这种情况下,将出现一个输入框,用于输入数字(整数)或文本(字符串)。

注意:在某些偏好设置情况下,字符串类型偏好设置可以包含或可能需要一个简单的整数而不是文本。因此,在更改相应偏好设置的值时,请注意其类型和文档。

右键单击偏好设置时,将出现一个上下文菜单,其中包含以下命令

  • 修改/切换;
  • 复制 - 复制以分号分隔的偏好设置名称和值。它被粘贴为preference.name;value
  • 复制名称 - 只复制偏好设置名称,以便轻松粘贴和搜索
  • 复制值 - 只复制偏好设置值。如果值是一个很长的文本字符串,并且远远超出显示区域,则非常有用。
  • 新建> - 创建一个未列出的新偏好设置:字符串、整数或布尔值。
  • 重置 - 将偏好设置值重置为浏览器或安装的扩展程序预设的默认值。如果出现任何问题,这将很有用。

可以在此处找到更完整的 about:config 设置列表,包括说明和偏好设置将采用的值(如果适用)。

示例偏好设置

[编辑 | 编辑源代码]
  • browser.block.target_new_window - 如果设置为 true,则通常强制打开新窗口的链接将在当前窗口中打开。
  • browser.xul.error_pages.enabled - 如果设置为 true,则如果加载页面失败,Firefox 将显示一个类似于 IE 的错误页面,而不是消息框。这是一个较旧的已弃用的偏好设置,因为 Firefox 现在使用错误或消息页面
  • layout.frames.force_resizability - 如果设置为 true,则允许用户调整使用框架的任何网站上的框架大小。

优化资源使用

[编辑 | 编辑源代码]

以某种方式设置某些设置对于内存有限的设备(例如内存为 1 GB 或更少的设备)是必要的或建议的,特别是在 LiveCD 条件下,因为 LiveCD 环境可能无法使用交换分区 - 特别是对于安装了 Windows 的计算机,因为 Linux 交换分区不存在硬盘上。

内存为 1 GB 或更少的计算机必须启用该设置以减少内存和资源消耗。

在 LiveCD 设置中内存为 1.5-2 GB 的设备能够处理更大的资源需求,但不能太多。在这一点上,对于 1 GB 内存来说是必要的价值,仅推荐用于内存为 2 GB 的计算机和设备。

名称 类型 必要
当 =< 1GB 内存
建议 当 2GB 内存 说明
app.update.auto 布尔值 false true false 如果设置为false,Firefox 将不会自动更新自身。[1] 此偏好设置不会影响扩展程序和搜索更新。
app.update.enabled 布尔值 false true false 如果设置为false,浏览器的自动更新功能将关闭。[2] 通常在 Windows 上设置为true 以保持 Firefox 更新和安全。在某些 Linux 发行版中,该偏好设置被设置为false 并锁定,因为浏览器是通过发行版的软件包管理器更新的。此偏好设置不会影响扩展程序和搜索更新。
app.update.interval 整数 604800 设置浏览器更新检查的间隔时间(以秒为单位)。默认值为 86400 秒(一天);[3] 604800 秒为一周。
browser.tabs.remote.autostart 布尔值 false false 关闭每个标签的多进程。也称为 Electrolysis (e10s),它将每个标签放入自己的浏览器进程中,以提高安全性。
dom.ipc.processCount 整数 1 这似乎也计算在内。
browser.sessionhistory.max_entries 整数 25 25 50 在窗口/标签历史记录中向前和向后浏览最多 25 页,而不是默认的 50 页。
browser.sessionhistory.max_total_viewers 整数 0 0 4 基于存储的页面数量进行快速前后浏览,以便快速访问。默认值为 -1(即“所有”)。当值为 0 时,每个页面都将从服务器再次请求,页面加载时间会增加,但总体上应占用更少的设备资源。
browser.sessionstore.interval 整数 90000 90000 默认值很低,但将其增加到 90000 以防止偶尔出现繁重的存储介质请求。
browser.sessionstore.max_tabs_undo 整数 3 7 10 对于内存非常有限的设备,这也可以设置为 0,但如果 Firefox 崩溃或强制关闭,用户将丢失所有工作。默认值为 10。
extensions.pocket.enabled 布尔值 false false 禁用 Pocket,适用于那些不使用它的人(大多数人)
general.smoothScroll 布尔值 false false true 禁用平滑滚动。在 2 Gb 内存及更高版本中,根据个人喜好设置。
browser.search.suggest.enabled 布尔值 false false/true 禁用地址栏中的即时搜索建议。
browser.search.update.interval 整数 90000 90000 增加检查搜索引擎更新的时间。默认值更低。
extensions.blocklist.interval 整数 90000 90000 将间隔时间从较低的默认值增加到 90000。
extensions.update.interval 整数 90000 90000 增加检查扩展程序更新的间隔时间。在 about:addons 中,从齿轮图标关闭自动更新检查。
privacy.sanitize.sanitizeOnShutdown 布尔值 true true 在将其设置为“true”之前,仅将浏览器缓存设置为在浏览器偏好设置用户界面中退出时删除。其他项目也可以设置为删除,但在无交换条件下(LiveCD),退出时删除浏览器缓存非常重要。
privacy.donottrackheader.enabled 布尔值 true true 这是一个可选的隐私设置,它会在网络请求中添加“禁止跟踪”标题。大多数网站不遵守该标题,此偏好设置可能在将来设置为已弃用。
privacy.trackingprotection.enabled 布尔值 true true 这有时会有所帮助,但可能会破坏新闻和类似的网站,这些网站希望显示来自社交网络的嵌入内容。可以通过地址栏中网站 URL 左侧的屏蔽图标来禁用每个网站。
browser.startup.homepage 字符串 about:blank 当将 about:blank 设置为主页时,可以提高浏览器启动速度。
services.sync 布尔值 false true false Firefox Sync 将所有浏览数据与 Mozilla 云同步,以便在其他设备上轻松访问。false 将 Sync 关闭,如果用户不使用 Sync。

此选项必须单独添加,并且可能不起作用,因为它不受所有版本的 Firefox 支持。此偏好设置通常在 Firefox 派生版本中看到。

accessibility.typeaheadfind.enablesound 布尔值 false true false false 禁用在使用键盘快速搜索文本或链接时播放声音(无需 Ctrl+F)。
devtools.screenshot.audio.enabled 布尔值 false true false false 禁用在截取屏幕截图时播放声音。
narrate.enabled 布尔值 false 默认 false 禁用屏幕朗读。
toolkit.cosmeticAnimations.enabled 布尔值 false false 禁用浏览器用户界面动画。(这并不总是适用于 Android 上的页面加载进度条。)
名称 类型 必要
at =< 1GB
建议 当 2GB 内存 说明

禁用媒体

[编辑 | 编辑源代码]

所有媒体功能都被禁用:包括播放、媒体捕获(音频和视频录制)和屏幕共享。

如果计算机 RAM 内存为 2 Gb 或更大,则可选或不需要。

名称 类型 必要
at =< 1GB
说明
media.autoplay.enabled 布尔值 false false 禁用自动播放。可能不会自动播放 YouTube 视频。
media.autoplay.enabled 布尔值 false false 禁用自动播放。可能不会自动播放 YouTube 视频。
media.encoder.webm.enabled 布尔值 false WebM 编解码器(编码)。
media.ffmpeg.enabled 布尔值 false 访问 ffmpeg 组件以播放视频
media.ffvpx.enabled 布尔值 false
media.flac.enabled 布尔值 false FLAC 编解码器
media.getusermedia.screensharing.enabled 布尔值 false 屏幕共享
media.gmp-provider.enabled 布尔值 false
media.gmp-widevinecdm.enabled 布尔值 false WideVine 内容解密模块。该模块旨在解密 DRM 内容。
media.gmp-widevinecdm.visible 布尔值 false WideVine 内容解密模块
media.mediasource.enabled 布尔值 false
media.mediasource.mp4.enabled 布尔值 false
media.mediasource.webm.audio.enabled 布尔值 false
media.mediasource.webm.enabled 布尔值 false
media.mp4.enabled 布尔值 false MP4 容器(通常用于 H.264/AV1 视频)
media.navigator.enabled 布尔值 false
media.navigator.video.enabled 布尔值 false
media.ogg.enabled 布尔值 false Ogg Vorbis 编解码器
media.ogg.flac.enabled 布尔值 false FLAC 编解码器
media.ondevicechange.enabled 布尔值 false
media.opus.enabled 布尔值 false Opus 编解码器
media.peerconnection.dtmf.enabled 布尔值 false
media.peerconnection.enabled 布尔值 false
media.peerconnection.identity.enabled 布尔值 false
media.peerconnection.rtpsourcesapi.enabled 布尔值 false
media.peerconnection.simulcast 布尔值 false
media.peerconnection.use_document_iceservers 布尔值 false
media.peerconnection.video.enabled 布尔值 false
media.peerconnection.video.vp9_enabled 布尔值 false
media.play-stand-alone 布尔值 false 在单独的标签页中播放独立媒体文件。
media.resume-bkgnd-video-on-tabhover 布尔值 false '将鼠标悬停在标签页上时恢复后台视频'
media.video_stats.enabled 布尔值 false 视频统计
media.wave.enabled 布尔值 false Wave 编解码器。通常由媒体密集型 Web 应用程序用于通知。
media.webm.enabled 布尔值 false WebM 编解码器。WebM 被 YouTube 用于大多数内容。
名称 类型 必要
at =< 1GB
说明
名称 类型 必要
at =< 1GB
推荐
at 2GB
说明
browser.tabs.loadInBackground 布尔值 false false 在标签页中打开链接时切换到新标签页。否则,将显示原始标签页,新打开的标签页仅在后台显示加载,直到用户切换到它为止。

加速网络访问

[编辑 | 编辑源代码]

可以进行以下更改来加速网络访问。

通常,与网络速度相关的偏好设置不需要更改,除非您确切地知道要对这些设置执行的操作。

更改这些偏好设置可能会加速浏览,但在大多数情况下,差异微不足道。在现代 Firefox 版本中,一些设置也已被弃用。

通过扩展程序,可以使用广告拦截器(例如 Adblock Plus uBlock Origin)和/或脚本拦截器,例如 NoScript 来提高一般的浏览速度。由于它们会阻止各种内容,因此页面渲染速度会提高,并且对广告和跟踪器的网络请求也会减少。

流水线

[编辑 | 编辑源代码]

通常,浏览器一次只会向网页发出一个请求。当您启用流水线时,它将一次发出多个请求,这通常会加快页面加载速度。进行以下更改以启用流水线

将 "network.http.pipelining" 设置为 "true"

将 "network.http.proxy.pipelining" 设置为 "true"

[提示:如果您的浏览器设置为连接到可选的 http 代理,则可以将 "network.http.pipelining" 保留为 "false",然后将无法使用流水线的网站域(例如 images.google.com)添加到代理排除列表中。]

将 "network.http.pipelining.maxrequests" 设置为 8。 — 这意味着 Firefox 将一次最多发出 8 个请求,而不是默认的 4 个。只有当您拥有快速可靠的互联网连接时,这才是优势。

最大连接数

[编辑 | 编辑源代码]

适用于宽带用户

将 "network.http.max-connections-per-server" 设置为 14。许多指南建议将此数字设置为 100,但这可能会对 Web 服务器产生不良影响。

将 "network.http.max-connections" 设置为 48

右键单击任何位置并选择新建->整数。将其命名为 "nglayout.initialpaint.delay" 并将其值设置为 "0"。

此偏好设置指定浏览器在对接收到的信息进行处理之前等待的时间,但这会增加渲染页面所需的总时间。虽然此选项更适合更快的计算机,但将值设置为较低的值,或将值设置为 "0" 在连接速度慢的情况下效果更好。

默认值为 "250"。如果 "0" 导致问题,请尝试使用 "100" 的值。

用户代理字符串

[编辑 | 编辑源代码]

用户代理字符串(UA 字符串)是一个具有特定语法的文本字符串,用于识别用户代理 — 通常是 Web 浏览器 — 它在向网站或域名发出请求以下载页面或获取信息时发送。其他一些用户代理包括盲人使用的屏幕阅读器、下载管理器、网络爬虫、索引器和归档器,它们各自发送自己独特的 UA 字符串。

某些网站要求使用特定版本的浏览器,或特定浏览器和操作系统组合,以便 Web 应用程序提供特定功能或完全正常工作。

对于大多数网站,用户代理字符串不需要修改。这种修改也称为用户代理欺骗

存在需要更具体的用户代理字符串的用例

  • 特定网站需要特定浏览器;
  • 用户希望他们的 Web 客户端在某些域和用例中识别为移动浏览器、平板电脑浏览器或桌面浏览器;
  • 用户拥有需要将自身识别为更新浏览器的旧版浏览器,以适用于某些网站;
  • 用户希望他们的浏览器拥有最通用的用户代理,以保护隐私;
  • 相反,有些人希望拥有非常具体的用户代理字符串,以便向网站表明他们使用的是最喜欢的浏览器,或特定操作系统,或表明特定操作系统版本仍在使用。

后一个示例最常适用于使用 Firefox 派生版本(例如 GNU IceCat 或 WaterFox)的人,或使用旧版 Firefox 的人,或操作系统为 Linux 的人,或使用旧版 Android 的人。

使用特定 UA 字符串的原因是为了提醒网站开发人员注意哪些配置访问了他们的网站,他们应该针对哪些浏览器和操作系统进行测试,以及他们应该继续支持哪些浏览器和操作系统。

因此,推广非通用 UA 字符串会导致这些用户在隐私方面也面临两难境地,因为非常具体的用户代理字符串非常独特,因此更容易被使用浏览器指纹识别的网站识别。

相比之下,许多版本的 Android 中的默认 Web 浏览器甚至在其用户代理字符串中发送设备品牌和型号,而 Android 版 Firefox 的 UA 字符串通常包含的信息更少,并且在过去也更不准确。

尽管如此,桌面版 Firefox 本身已经成为少数浏览器——其使用份额远不及 Google Chrome,而 Android 版 Firefox 在手机和平板电脑上的比例则更低。因此,每个 Firefox 版本都更独特,每个 Firefox 派生版本也更独特。

不过需要注意的是,如果愿意,高级用户通常知道如何正确地匿名化从他们的计算机通过更广泛的互联网运行的浏览流量。

要了解网站可以收集有关您使用的浏览器和所用设备的哪些信息,请访问 Electronic Frontier Foundation 的 Panopticlick 网站,网址为 https://panopticlick.eff.org

在桌面版 Firefox 中,更改 about:config 偏好设置中的用户代理字符串不起作用,而在 Android 版 Firefox 中效果很好。

要更改桌面版 Firefox 中的用户代理字符串,必须使用扩展程序。

  • UAControl 是 Firefox 56.0 及更早版本的旧版 XUL 扩展。它支持对特定域进行用户代理欺骗,从而为所有其他网站保留默认的用户代理字符串,但它没有预设的 UA 字符串列表(这些字符串可以从 Web 上获取)。UAControl 需要 User-Agent JS Fixer 加载项才能正常工作。
  • 自定义 UserAgent 字符串 是一款 WebExtension,它在使用每个域的 UserAgent 欺骗方面同样通用,但用户界面笨拙。它适用于 Firefox 48.0 及更高版本。

编辑 userChrome.css 文件

[编辑 | 编辑源代码]

userChrome.css 是一个文件,它允许您使用 CSS 规则更改 Firefox 的外观。实际的浏览器窗口(即,不是网页,而是所有其他内容)被称为“chrome”。userChrome.css 文件覆盖默认设置,以允许进行更多自定义。

userChrome.css 默认情况下不会创建。它应该在您的配置文件文件夹中创建,该文件夹可以在以下位置找到:

Windows:
%appdata%\Roaming\Mozilla\Firefox\Profiles\<Profile name>\
Linux:
~/.Ajay/firefox/<Profile name>/
Mac OS X:
~/Library/Ajay/Firefox/Profiles/<Profile name>/
or
~/Library/Application Support/Firefox/Profiles/<Profile name>/

在所有情况下,配置文件都是随机命名的,由 8 个字符后跟.default 组成。在该文件夹中,另一个名为“chrome”的文件夹。在 chrome 文件夹中,需要创建 userChrome.css 文件。

编辑 userContent.css 文件

[编辑 | 编辑源代码]

UserContent.css 文件允许用户更改网页的总体外观。这需要了解层叠样式表 (CSS)。

通过此文件更改网页的外观可能比较麻烦,并且仅限于 CSS。建议使用 GreaseMonkeyStylish 扩展,因为每个扩展都提供了一个用户界面来执行相同操作,因此更容易使用。

GreaseMonkey 扩展更高级,因为它允许向下载的网页添加 JavaScript 以使网页或网站功能更强大。经过一些额外的努力,这还包括使用 CSS 装饰页面。

相比之下,Stylish 仅允许向下载的页面添加基于 CSS 的修改,并且与 GreaseMonkey 不同,Stylish 也适用于所有版本的 Android 版 Firefox。

请注意,虽然这些扩展程序仅更改下载到浏览器的网页的外观;扩展程序不会更改网页和网站在 Web 服务器上的外观。

  • 允许从 mozilla.org 而不是 www.mozilla.org 下载扩展程序将匹配 mozilla.org 的所有子域,就像阻止来自 doubleclick.net 而不是 www.doubleclick.net 的 cookie 将允许阻止所有 doubleclick.net 子域一样。允许“www.mozilla.org”将不允许“addons.mozilla.org”。但是,为了安全起见,在将网站列入扩展程序的白名单时,应使用最具体的可用域(即,addons.mozilla.org 而不是 mozilla.org)以防止从网站上的其他子域安装潜在的恶意软件。
  • 要在没有互联网连接的计算机上获取 Firefox,或在互联网下载被阻止的情况下,可以从另一台计算机正常下载安装程序(通常您可以在公共图书馆执行此操作),然后将 *.exe 文件放到一些可移动介质上并将其传输到第一台计算机。另一种选择是在 USB 驱动器或存储卡上下载 Firefox 便携版,并从外部存储设备运行便携版 Firefox。
章节: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14

参考资料

[编辑 | 编辑源代码]
  1. "app.update.auto". MozillaZine 知识库. MozillaZine. 2010-12-10. 检索于 2019-08-23.
  2. "app.update.enabled". MozillaZine 知识库. MozillaZine. 2011-07-08. 检索于 2019-08-23.
  3. "app.update.interval". MozillaZine 知识库. MozillaZine. 2010-11-22. 检索于 2019-08-23.
华夏公益教科书