用AutoConfig定制Firefox

配置教程

AutoConfig 文件可用于设置和锁定不受火狐策略覆盖的首选项。

Mac

要使用AutoConfig, 请将两个文件放到火狐目录中, 你先要进入火狐应用程序的内容/资源目录。 需要创建的第一个文件称为autoconfig.js, 它被放入defaults/pref 目录中。它应包含以下两行:

pref("general.config.filename", "firefox.cfg");

pref("general.config.obscure_value", 0);

第一行指定 AutoConfig 文件的名称。您可以指定您喜欢的任何名称, 但无法更改文件的位置。 第二行表示您不希望 AutoConfig 被遮盖。默认情况下, Firefox 希望该文件被字节移动13字节, 以便对其进行混淆。

您需要创建的第二个文件称为firefox.cfg, 它被放置在顶层。

它应该始终以注释行开头:

// IMPORTANT: Start your code on the 2nd line

虽然 AutoConfig 文件的扩展通常是 cfg, 但 AutoConfig 文件本身就是一个 JavaScript 文件。这意味着您可以在文件中编写 JavaScript, 以便在不同的情况下具有不同的逻辑。

Windows

要使用AutoConfig, 请将两个文件放到火狐目录中,你先要进入了安装火狐的同一目录。 需要创建的第一个文件称为autoconfig.js, 它被放入defaults/pref 目录中。它应包含以下两行:

pref("general.config.filename", "firefox.cfg");

pref("general.config.obscure_value", 0);

第一行指定 AutoConfig 文件的名称。您可以指定您喜欢的任何名称, 但无法更改文件的位置。 第二行表示您不希望 AutoConfig 被遮盖。默认情况下, Firefox 希望该文件被字节移动13字节, 以便对其进行混淆。

您需要创建的第二个文件称为firefox.cfg, 它被放置在顶层。

它应该始终以注释行开头:

// IMPORTANT: Start your code on the 2nd line

虽然 AutoConfig 文件的扩展通常是 cfg, 但 AutoConfig 文件本身就是一个 JavaScript 文件。这意味着您可以在文件中编写 JavaScript, 以便在不同的情况下具有不同的逻辑。

Linux

要使用AutoConfig, 请将两个文件放到火狐目录中,你先要进入了安装火狐的同一目录。

Linux的Firefox分发目录,参见在 GNU/Linux 中安装 Firefox

需要创建的第一个文件称为autoconfig.js, 它被放入defaults/pref 目录中。它应包含以下两行:

pref("general.config.filename", "firefox.cfg");

pref("general.config.obscure_value", 0);

第一行指定 AutoConfig 文件的名称。您可以指定您喜欢的任何名称, 但无法更改文件的位置。 第二行表示您不希望 AutoConfig 被遮盖。默认情况下, Firefox 希望该文件被字节移动13字节, 以便对其进行混淆。

您需要创建的第二个文件称为firefox.cfg, 它被放置在顶层。

它应该始终以注释行开头:

// IMPORTANT: Start your code on the 2nd line

虽然 AutoConfig 文件的扩展通常是 cfg, 但 AutoConfig 文件本身就是一个 JavaScript 文件。这意味着您可以在文件中编写 JavaScript, 以便在不同的情况下具有不同的逻辑。

AutoConfig的格式

AutoConfig的脚本格式

以下的是AutoConfig格式:

function("Preference", value);

function指函数,可用函数可在这里看到。

Preference指首选项名字,可在about:config看到,如何进入about:config,点击这里

value指首选项值,按照首选项类型设定。

AutoConfig的注释符号

AutoConfig由于是一个JS文件,所以注释要用如下格式:

//ABC

ABC可随意更改。

可用函数

以下函数在 AutoConfig 文件中可用:

Pref (prefName, 值) –设置首选项的用户值。此函数将首选项显式设置为用户首选项。这意味着, 如果用户更改了该值, 则每次启动浏览器时都会重置它。

defaultPref (prefName, 值) –设置首选项的默认值。这是用户未设置任何值时首选项的值。

lockPref (prefName, 值) –设置首选项的默认值并锁定它。这是人们最熟悉的功能, 当涉及到 AutoConfig 文件。锁定首选项可防止用户更改它, 在大多数情况下, 在首选项中禁用 UI, 这样用户就可以明显地禁用了首选项。如果您在首选项中看不到禁用的情况, 则在锁定、禁用按钮时, 有一些 "disable_button" 首选项。例如, 如果锁定Pref

pref.privacy.disable_button.view_password

它将禁用 "查看密码" 按钮。锁定按钮的其他首选项为:

pref.general.disable_button.default_browser

pref.browser.homepage.disable_button.current_page

pref.browser.homepage.disable_button.bookmark_page

pref.browser.homepage.disable_button.restore_default

security.disable_button.openCertManager

security.disable_button.openDeviceManager

app.update.disable_button.showUpdateHistory

pref.privacy.disable_button.cookie_exceptions

pref.privacy.disable_button.view_cookies

pref.privacy.disable_button.view_passwords

pref.privacy.disable_button.view_passwords_exceptions

pref.downloads.disable_button.edit_actions.

unlockPref (prefName) –解锁首选项。例如, 在某些情况下, 可能会锁定每个人的首选项, 然后为特定用户解除锁定。

getPref (prefName) –检索首选项的值。如果首选项不存在, 则显示错误。您应该只在您知道存在的首选项上使用此选项。

clearPref (prefName) –移除首选项的用户值, 将其重置为其默认值。

displayError (funcname, 消息) –以特定格式显示错误,例如:

Netscape.cfg/AutoConfig failed. Please contact your system administrator.

Error: [funcname] failed: [message]

这便于调试。

getenv (名称)-允许您查询环境变量。这可以让你做一些事情, 比如获取用户名和其他系统信息。

高级用法

集中管理

如果要集中管理 AutoConfig 文件, 可以在主 AutoConfig 文件中指定辅助 AutoConfig 文件的位置:

pref("autoadmin.global_config_url","http://yourdomain.com/autoconfigfile.js");

URL 可以是火狐支持的任何协议。这包括指定文件: 要指向网络驱动器上的文件的协议。除了第一行不被忽略外, 远程 autoconfig 文件的格式与客户端上的 autoconfig 文件相同。

用户特定配置

如果要在配置中具有用户特定的信息, 可以设置另一个首选项:

pref("autoadmin.append_emailaddr", true);

这将追加一个问号 (?) 和一个电子邮件地址的请求。

您可能想知道电子邮件地址来自哪里。因为 Firefox 不使用电子邮件地址, 所以您需要设置它。如果你不这样做, 火狐会显示一个提示, 询问你的电子邮件地址。首选项称为 mail.identity.useremail, 它是字符串首选项。因为 autoconfig 文件是 JS 文件, 所以可以在设置 autoadmin 之前设置此首选项. global_config_url。你可以做这样的事情:

var user = getenv("USER"); lockPref("mail.identity.useremail", user); lockPref("autoadmin.global_config_url","http://yourdomain.com/autoconfigfile.js");

工作方式配置

还有一些其他的偏好来控制 AutoConfig 的各个方面。autoadmin. refresh_interval 导致 AutoConfig 以分钟为指定的时间间隔刷新。还有一些与如何处理脱机有关的首选项, 包括 autoadmin. offline_failover 和 autoadmin failover_to_cached。这是他们的工作方式。

每次远程检索 AutoConfig 文件时, 都会在称为故障转移的用户配置文件目录中创建该文件的备份副本。如果首选项 autoadmin failover_to_cached 设置为 false, Firefox 将读取缓存的文件, 然后将浏览器标记为脱机并锁定首选项, 以便用户无法联机。如果首选项设置为 true, 则只使用缓存的文件, 然后继续。首选项 autoadmin offline_failover 控制在用户简单脱机时是否使用缓存文件。如果设置为 true, 则使用缓存文件。

这篇文章对您有帮助吗?

请稍候...

此文章在这些用户的协助下写成:

Illustration of hands

志愿者

分享知识并培养专业技能。解答问题并改进我们的知识库。

详细了解