如何在MediaWiki-Vagrant上创建wiki-family?

时间:2016-02-09 06:36:01

标签: vagrant mediawiki

是否有管理或创建多个wiki的角色?我已经检查过Manual:Wiki family,并了解在MediaWiki中创建多个wiki的正常方法。

2 个答案:

答案 0 :(得分:1)

除了manual之外,我想分享一下我的内容。

除多个域/子域外,您还可以获得多个wiki的多路径。通过在每个设置文件的末尾添加configuration setup,每个action path都会显示不同的LocalSettings.php

# End of automatically generated settings.
# Add more configuration options below.

$wgArticlePath = "/map/$1";

$actions = array( 'edit', 'watch', 'unwatch', 'delete','revert', 'rollback',
  'protect', 'unprotect', 'markpatrolled', 'render', 'submit', 'history', 
  'purge', 'info' );

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "$wgArticlePath/$action";
}

$wgActionPaths['view'] = "$wgArticlePath";

map变量更改为每个设置文件的路径,然后将它们放在名为“完全按照路径”的文件夹下。

因此,您可以修改wiki family page中的代码,如下所示:

<?php
// Include common settings to all wikis before this line (eg. database configuration)

    $paths = explode('/' , $_SERVER['REQUEST_URI']);
    if($paths[2] === NULL) {$path = 'map';} else {$path = $paths[1];} 

    switch ( $_SERVER['SERVER_NAME'] ) {

        case 'wiki.tophyips.info':
                require_once "settings/$path/tophyips.php";
                break;

        case 'wiki.hyipscript.info':
                require_once "settings/$path/hyipscript.php";
                break;

        case 'wiki.hyipmonitors.info':
                require_once "settings/$path/hyipmonitors.php";
                break;

        default:
                header( 'HTTP/1.1 404 Not Found' );
                echo 'This wiki is not available. Check configuration.';
                exit( 0 );

    }

map上的$path = 'map';变量更改为您在上面设置文件中放置的所有路径中的您选择的默认路径之一。

您可以在{{3}}上查看上述配置的结果。

答案 1 :(得分:1)

mediawiki::wiki模块用于创建wiki。使用它的一些角色是commonsprivate(肯定会有更多)。如果你只是想在没有任何额外配置的情况下创建一个wiki,你可以只写mediawiki::wiki{<wikiname>:}并将其放在puppet/modules/role/manifests/my_role.pp中(在角色块内 - 查看该格式的其他角色文件)然后你可以启用/通过vagrant roles停用。