如果你需要对 Confluence 进行维护,但是 Confluence 还是在运行或者你计划将站点合并到一个新的站点,你可以将你的 Confluence 站点设置为只读模式来限制用户在你站点中可以使用的功能。你的用户可以对页面进行查看,但是不能创建和系修改他们。

只读模式只在Confluence 中心模式中可用。本页面中的内容并不适用 Confluence 的本地部署服务器版本。

打开只读模式

你需要具有系统管理员的 global permissions 才能进行这个操作。

To enable read-only mode:

  1. 进入  > 基本配置(General Configuration) > 维护(Maintenance)
  2. 在只读模式选项中,选择 编辑(Edit)。
  3. 选择 只读模式(Read-only mode)
  4. 更新头标消息(banner message)中的内容,如果你希望使用你自己的自定义消息的话。
  5. 选择 保存(Save)

头标的消息将会在你站点中的所有页面上进行显示。当只读模式被启用后,是没有办法禁用这个头标消息的,但是你可以对头标消息中的内容进行自定义。例如你可以让你的用户知道你的维护窗口期是什么时候,你的系统维护将会在什么时候完成。

在你系统进入只读模式之前,也是可以启用头标消息的。针对你希望在维护之前对你的用户提出警告,你可以在随后规定的时间内对系统进行维护。

只读模式对你站点和数据库的影响

只读模式限制了一个最终用户可以在平台上的行为。一些操作可能还会写入你的数据库,但是绝大部分用户将不能做任何修改。

当只读模式启用后,你不能进行下面的操作:

  • 创建,编辑,重命名,移动,删除或者有关页面的其他操作。
  • 创建,删除或者重命名空间。
  • 访问绝大部分的空间工具,包括页面重新排序,修改页面的界面和外观或添加整合。

下面的页面是当只读模式启用后页面的显示情况:

  1. 自定义头标(Customizable banner) - 这个头标将会你站点的所有页面上显示。管理员可以自定这个头标中的信息,让用户能够知道站点何时能够开始重新被访问。
  2. 限制的选项(Options are limited) - 我们将会隐藏不可用的按钮和菜单,包括创建,编辑,移动,和删除。

如果你正在编辑页面中对页面进行编辑的时候,只读模式被启用了,你还是可以继续进行输入的,但是后续的修改将不会被保存。

  1. 只读模式警告(Read-only warning) - 尽管你还是可以持续进行编辑(包括评论字段),在只读模式下进行的修改将不会被保存。你最好还是不要在这个时候对页面进行编辑。

尽管只读模式被启用了,当具有系统管理员全局 global permissions 权限的用户还是可以进行一些管理员功能的,例如:

  • 安装,卸载,启用,禁用插件
  • 管理用户,用户组和权限
  • 修改站点的表现
  • 导出和导入空间
  • 修改日志级别和其他配置

不是所有的管理员特性将会可用,管理员和最终用户是一样的,也不能对页面进行创建,编辑,或者删除。

当只读模式启用后,具有系统管理员全局 global permissions 权限的用户将会被允许进行一些管理员功能,但是这些用户将不能被允许修改空间权限。

一个重要的情况是,只读模式不能阻止数据写入到数据库,但是限制了绝大部分用户可以进行的操作。

如果你现在正在进行数据库维护,你希望绝对没有任何数据写入到数据库中的话。最佳实践为停止 Confluence 的运行,而不是将 Confluence 设置为只读模式。

用户安装插件的兼容性

不是所有安装的插件都能够兼容系统的只读模式的,有些插件可能会在只读模式启用后也允许用户创建或者更新内容。

希望对插件的兼容性进行检查:

  • 进入  > 基本配置(General Configuration) > 维护(Maintenance)
  • 检查任何用户安装的插件存在不兼容的情况。

如果一个插件不兼容,你可能需要先禁用这个插件,当你在对系统进行维护的时候来避免通过这个插件来创建内容。

如果你开房了你自己的自定义插件的话,请参考 How to make your add-on compatible with read-only mode 页面中的内容来找到如何测试你的插件,同时标记你的插件为兼容的。

使用只读模式的时机

如果你很喜欢我们提供的这个只读模式的功能,但是你又不知道在何种情况下进行使用,下面是使用这个模式的一些场景。

升级 Confluence

upgrade Confluence 的方法和策略没有改变,但是这个模式能够最小化对你系统的影响。

如果一些时候的系统不能访问是可以接受的,在你对系统进行预升级步骤的时候,最简单的方法是启用这个只读模式。例如检查插件的兼容性,备份你的文件系统和数据(如果你的数据库支持在线备份的话)。这个能够对升级造成的系统影响降低到最小,用户可以一直查看页面直到你真正停止 Confluence 进行升级前为止。

如果你希望提供不中断的访问,解决方案根据你使用的是虚拟还是物理硬件有关。

  • 在虚拟情况下,你可能希望使用“向前移动”的方案。你可以启用你站点的只读模式,克隆的数据库,安装和 Home 目录,然后在你克隆的环境下进行升级。当升级完成后,你也校验了所有的功能都能够正常工作了,你可以将你的用户访问流量指向到新的升级的服务器上。然后关闭老的服务器。
  • 如果你现在正在运行 Confluence 在物理服务器上,那么最好还是创建一个临时只读的站点,你可以克隆你的生产数据库,安装,和 Home 目录来创建一个临时只读的站点(与创建一个新的直接运行的站点相类似)。然后将访问流量导入到新的站点中,知道你升级完成后再将流量导入回来。

你应该总是在测试服务器上对升级进行测试,请参考页面 Create a staging environment for upgrading Confluence 中的内容。你可以尝试创建一个克隆的网站,请主要你需要确保你的 Confluence Home 目录和数据库连接总是指向到正确的路径。

更新你的硬件结构

希望移动 Confluence 到一个其他的服务器或者为你共享的 home 目录中提供更多的空间?有关 Confluence 升级相关的文档也同样适用于你对硬件结构的升级。

请注意,尽管你启用了只读模式,一些数据还是会写入到数据库中的。如果你真正对数据库进行维护和升级的话,你需要将你的用户的流量导向到备用的服务器上(这个服务器上有你生产数据库的拷贝),同时第二个服务器上启用了只读模式,这是一个比较合理的方案。你不能在生产服务器上的 Confluence 实例还在运行的时候就对数据库进行升级,尽管只读模式已经启用了。

再次提醒,总是确定你的 Confluence 指向到正确的数据库!

多 Confluence 站点合并

在一些大的组织中,安装多个 Confluence 实例是一个比较常见的情况。如果你正在考虑合并多个站点,只读模式能够帮助你限制你对站点的合并过程中内容的修改,尽最大限度的保持站点内容在站点合并的过程中的完整性。

https://www.cwiki.us/display/CONF6ZH/Using+read-only+mode+for+site+maintenance

Confluence 6 针对站点维护使用只读模式的更多相关文章

  1. MySQL设置从库只读模式

    常见现象 运维工作中会经常维护MySQL主从服务器,当然Slave我们只是用于读操作. 一般权限开通也只授权只读账号,但是有时候维护工作可能不是一个人在做,你不能保证其他同事都按照这个标准操作. 有同 ...

  2. Vim保存只读模式下的修改

    用 vim 打开没有写权限的文件而忘记用 sudo 时,文件变成 read-only这时候用 :w!, SHIFT+ZZ,或者 qw! 都无法保存 :w !sudo tee % :w : Write ...

  3. set global read_only=0; 关闭只读,可以读写 set global read_only=1; 开始只读模式

    mysql> set global read_only=0; Query OK, 0 rows affected (0.00 sec) mysql> show variables like ...

  4. 站点维护使用app_offline.htm页面提供友好的更新提示

    进行站点维护时为了以一个友好的方式提示给用户,比如什么“本网站正在更新”等等的信息可以建立一个叫app_offline.htm 的静态HTM页面文件,其中修改成你要临时显示的内容,将其放在你的应用的根 ...

  5. 虚拟机上的Ubuntu 文件系统成为只读模式的解决办法

    虚拟机环境的Linux系统由于是虚拟化虚拟出来的主机环境,因此 经常会出现一些操作系统的问题,今天我遇到了一个Ubuntu操作系统文件系统成了只读模式,无法进行系统的操作,由于出问题的主机是我个人搭建 ...

  6. 记一次深度系统安装至windows系统盘提示挂载为只读模式问题

    记一次深度系统安装至windows系统盘提示挂载为只读模式问题 来到新公司新电脑自己要安装deepin,安装的时候没考虑双系统直接装至默认win系统盘,导致deepin启动后提示如下: 提示多个挂载分 ...

  7. Write operations are not allowed in read-only mode 只读模式下(FlushMode.NEVER/MANUAL)写操作不允

    org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read ...

  8. mysql只读模式的设置方法与实验【转】

    在MySQL数据库中,在进行数据迁移和从库只读状态设置时,都会涉及到只读状态和Master-slave的设置和关系. 经过实际测试,对于MySQL单实例数据库和master库,如果需要设置为只读状态, ...

  9. 打开的文件符合PDF/A标准,且已在只读模式下打开,以防被修改

    PDF/A是一种用于长期归档和保留电子文档的ISO标准.您扫描到PDF的文档符合PDF/A的规范.您可以指定是否要用本查看模式查看文档. PDF/A 问题提示:“打开的文件符合PDF/A标准,且已在只 ...

随机推荐

  1. python中矩阵的用法

    python矩阵的表示真是让人头大,下面记录一下具体用法:array是numpy库里的.不管怎样, 一.首先导入 numpy: 1)import numpy 2)from numpy import * ...

  2. char,wchar_t 长度

    (测试环境:VC++6.0) char类型 wchar_t类型 类型大小(32位系统) 8位 16位 常量字符表示法 'A' L'A' 或 'A' 常量字符串表示法 'hello' L'hello' ...

  3. 嵌入式4412开发板学习知识-Linux系统基础知识

    1. 什么是Linux系统编程 Linux系统编程分为三个部分:系统调用.C库和C编译器. 系统调用系统编程的基础是系统调用,也结束于系统调用.在带有操作系统的嵌入式开发中,需要从操作系统申请一些服务 ...

  4. git操作本地仓库基本使用教程

    1.创建仓库 mkdir learngit 2.初始化 cd learngit git init 3.添加文件(把要提交的所有修改放到暂存区(Stage)) git  add 文件 4.提交到仓库(以 ...

  5. 特性Attribute

    1.简介 特性(attribute)是被指定给某一声明的一则附加的声明性信息. 在C#中,有一个小的预定义特性集合.在学习如何建立我们自己的定制特性(custom attributes)之前,我们先来 ...

  6. Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getClassLoader()Ljava/lang/ClassLoader;

    运行tomat  报错: Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getClassLoader()Lj ...

  7. 20165221 JAVA第四周学习心得

    教材内容总结 子类与继承 子类与父类 定义的标准格式为 class 子类名 extends 父类名 { ... } 如果一个类的声明中,没有使用extends关键字,则默认为Object类. 子类的继 ...

  8. [转] 理解NLP中的卷积&&Pooling

    转自:http://blog.csdn.net/malefactor/article/details/51078135 CNN是目前自然语言处理中和RNN并驾齐驱的两种最常见的深度学习模型.图1展示了 ...

  9. xht37的码风

    写在前面 众所周知,在 Dev-C++ 上有一个代码格式化的功能,快捷键Ctrl+Shift+A 我的码风致力于写出格式化后毫无变化的代码,这被认为是标准代码 同时,对不可格式化的部分(如空格),我同 ...

  10. CF1091E New Year and the Acquaintance Estimation

    题目地址:CF1091E New Year and the Acquaintance Estimation 首先,易知 \(ans\) 的奇偶性与所有给出的数的和的奇偶性相同 其次,易证 \(ans\ ...