`
duhuilin01
  • 浏览: 884713 次
  • 性别: Icon_minigender_1
  • 来自: 湖南省
社区版块
存档分类
最新评论

wiki配置管理

阅读更多
def __init__(self, siteid):
        """ Init Config instance """
        self.siteid = siteid
        self.cache = CacheClass()

        from MoinMoin.Page import ItemCache
        self.cache.meta = ItemCache('meta')
        self.cache.pagelists = ItemCache('pagelists')

        if self.config_check_enabled:
            self._config_check()

        # define directories
        self.moinmoin_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir))
        data_dir = os.path.normpath(self.data_dir)
        self.data_dir = data_dir
        for dirname in ('user', 'cache', 'plugin'):
            name = dirname + '_dir'
            if not getattr(self, name, None):
                setattr(self, name, os.path.abspath(os.path.join(data_dir, dirname)))

        # Try to decode certain names which allow unicode
        self._decode()

        # After that, pre-compile some regexes
        self.cache.page_category_regex = re.compile(self.page_category_regex, re.UNICODE)
        self.cache.page_dict_regex = re.compile(self.page_dict_regex, re.UNICODE)
        self.cache.page_group_regex = re.compile(self.page_group_regex, re.UNICODE)
        self.cache.page_template_regex = re.compile(self.page_template_regex, re.UNICODE)

        # the ..._regexact versions only match if nothing is left (exact match)
        self.cache.page_category_regexact = re.compile(u'^%s$' % self.page_category_regex, re.UNICODE)
        self.cache.page_dict_regexact = re.compile(u'^%s$' % self.page_dict_regex, re.UNICODE)
        self.cache.page_group_regexact = re.compile(u'^%s$' % self.page_group_regex, re.UNICODE)
        self.cache.page_template_regexact = re.compile(u'^%s$' % self.page_template_regex, re.UNICODE)

        self.cache.ua_spiders = self.ua_spiders and re.compile(self.ua_spiders, re.IGNORECASE)

        self._check_directories()

        if not isinstance(self.superuser, list):
            msg = """The superuser setting in your wiki configuration is not a list
                     (e.g. ['Sample User', 'AnotherUser']).
                     Please change it in your wiki configuration and try again."""
            raise error.ConfigurationError(msg)

        self._loadPluginModule()

        # Preparse user dicts
        self._fillDicts()

        # Normalize values
        self.language_default = self.language_default.lower()

        # Use site name as default name-logo
        if self.logo_string is None:
            self.logo_string = self.sitename

        # Check for needed modules

        # FIXME: maybe we should do this check later, just before a
        # chart is needed, maybe in the chart module, instead doing it
        # for each request. But this require a large refactoring of
        # current code.
        if self.chart_options:
            try:
                import gdchart
            except ImportError:
                self.chart_options = None

        # post process

        # 'setuid' special auth method auth method can log out
        self.auth_can_logout = ['setuid']
        self.auth_login_inputs = []
        found_names = []
        for auth in self.auth:
            if not auth.name:
                raise error.ConfigurationError("Auth methods must have a name.")
            if auth.name in found_names:
                raise error.ConfigurationError("Auth method names must be unique.")
            found_names.append(auth.name)
            if auth.logout_possible and auth.name:
                self.auth_can_logout.append(auth.name)
            for input in auth.login_inputs:
                if not input in self.auth_login_inputs:
                    self.auth_login_inputs.append(input)
        self.auth_have_login = len(self.auth_login_inputs) > 0

        # internal dict for plugin `modules' lists
        self._site_plugin_lists = {}

        # we replace any string placeholders with config values
        # e.g u'%(page_front_page)s' % self
        self.navi_bar = [elem % self for elem in self.navi_bar]
分享到:
评论

相关推荐

    SpringBoot2.0+Vue3.0前后端分离wiki文件管理系统源码.zip

    《SpringBoot2.0+Vue3.0前后端分离wiki文件管理系统源码解析》 在当前的互联网开发环境中,前后端分离已经成为了一种常见的架构模式,它可以提高开发效率,优化用户体验,同时也使得前后端职责更加明确。本系统采用...

    文档管理Markdown文件自动实时同步转换到dokuwiki的一种方法

    本篇文章探讨了一种将Markdown文件自动实时同步到DokuWiki的方法,旨在结合两种工具的优势,提高文档管理的效率和便利性。 Markdown是一种轻量级的标记语言,因其简洁易读的格式而受到广泛欢迎,特别是在编写技术...

    dokuwiki安装与配置[归纳].pdf

    dokuwiki安装与配置 dokuwiki是一个功能强大且灵活的Wiki软件,能够帮助用户快速创建和管理知识库。下面是关于dokuwiki的安装和配置的知识点: 1. 安装dokuwiki 在Ubuntu系统上安装dokuwiki,首先需要下载doku...

    dokuwiki知识库管理

    **DokuWiki知识库管理** DokuWiki是一款开源的、专为团队协作设计的轻量级wiki系统。它不需要数据库,可以直接在纯文本文件中存储内容,这使得它易于备份、恢复和版本控制。这款软件特别适合小型团队用于文档共享、...

    wiki资源管理系统

    - “wiki安装文档.doc”提供了详细的安装流程,对于首次部署Wiki系统的用户非常有用,涵盖了服务器配置、数据库连接等关键步骤。 - “upgrade21utf8.zip”是针对某个旧版本(可能是2.1)的升级包,通常包含升级...

    Wiki架设手册

    它的强大功能和灵活性使得用户可以创建和管理复杂的知识库。Mediawiki 支持多语言,包括中文,这使得中文用户能够轻松地搭建自己的Wiki站点。 ### Mediawiki的优势 1. **易用性**:Mediawiki 提供直观的用户界面,...

    widows下wiki详细安装配置文档

    【Windows下Wiki安装配置详解】 在Windows环境下搭建Wiki平台,特别是对初学者而言,可能会遇到不少挑战。本文将详细介绍如何在Windows 2003服务器上安装和配置MediaWiki(MW),一个基于PHP开发的开源Wiki软件。MW...

    wiki(非常不错的wiki源码)

    【标题】"wiki(非常不错的wiki源码)"指的是一个用于创建和管理知识库的开源软件,可能是指HDWiki,这是一个广泛应用于构建企业或个人知识分享平台的系统。它提供了便捷的方式来组织、编辑和检索信息,使得知识的共享...

    wiki部署文档

    wiki 部署文档是关于在 CentOS 操作系统上安装和配置 Docker 环境的文档。该文档涵盖了从升级内核版本到安装 Docker 的整个过程。下面是该文档中所涉及到的知识点: 1. 查看内核版本:使用 uname -r 命令可以查看...

    dokuwiki稳定版,可以在windows或者linux上面搭建,个人用或者公司用都可以,轻量、易安装、免费、便于管理

    对于那些希望避免复杂数据库配置的用户来说,DokuWiki是一个理想的选择。 在安全性方面,DokuWiki表现出色,具备良好的权限管理系统,可以精细控制不同用户对内容的访问和编辑权限。这对于企业内部知识库的构建尤其...

    dokuwiki 插件.zip

    AddNewPage简化了页面创建,XHEditor提供了高级的编辑体验,而SimpleNavi则优化了导航流程,使得DokuWiki成为一个更加高效的知识管理和协作平台。在实际应用中,可以根据团队的需求和工作流程,灵活选择和配置这些...

    Wiki.js 开源项目-windows版

    `Wiki.js` 是一个基于 `JavaScript` 开发的开源 Wiki 系统,专为个人和小企业设计,用于知识管理和信息共享。"windows版" 表明这个项目不仅支持常见的跨平台环境,还特别优化了在 Windows 操作系统上的部署和运行。 ...

    集成editor.md的dokuwiki(支持markdown)

    在IT领域,DokuWiki是一个流行的开源wiki软件,主要用于创建和管理文档。它以其简洁的界面、易于编辑和强大的文本格式化能力而受到喜爱。然而,原生的DokuWiki支持的是其自有的wikitext语法,而不是更通用的Markdown...

    dokuwiki.zip

    DokuWiki是一个强大的开源wiki引擎,专为那些寻求简洁、高效知识管理解决方案的个人和团队设计。这个系统基于PHP开发,无需数据库支持,这使得它易于安装和维护,尤其适用于那些资源有限或对数据库操作不熟悉的小型...

    基于Spring Boot的WIKI知识库管理系统.zip

    基于Spring Boot的WIKI知识库管理系统 项目概述 本项目是一个基于Spring Boot框架开发的WIKI知识库管理系统,旨在提供一个高效、易用的平台来管理和分享知识。系统集成了多种功能,包括用户管理、文档管理、分类...

    TRIRIGA Wiki 设施管理软件

    ### TRIRIGA Wiki 设施管理软件:关键知识点解析 #### 一、设施管理与TRIRIGA Wiki - **设施管理(Facilities Management, FM)**:这是一门涉及建筑及其环境的综合管理学科,旨在确保组织的核心业务能够顺利进行...

    wiki建站系统

    10. **部署与维护**: 部署wiki建站系统需要考虑服务器环境配置、数据库安装、域名绑定等步骤,而后期维护则包括软件更新、数据备份、性能优化等。 综上所述,"wiki建站系统"是一个采用PHP开发的、仿照互动百科的...

    dokuwiki.tgz

    2. **配置文件**:修改conf/dokuwiki.ini配置文件,根据实际需求调整各项参数,如语言、主题、权限等。 3. **初始化**:运行install.php脚本,按照提示完成初始化设置,包括创建管理员账号、设置站点信息等。 4. *...

    puppet开源自动化配置管理平台介绍

    ### Puppet开源自动化配置管理平台详解 #### 一、Puppet简介与实现原理 Puppet是一款由Puppet Labs公司开发的开源自动化配置管理平台,旨在帮助系统管理员自动化IT基础设施的配置和管理过程。Puppet的核心设计理念...

Global site tag (gtag.js) - Google Analytics