MediaWiki:修订间差异

来自Gea-Suan Lin's Wiki
跳到导航 跳到搜索
 
(未显示同一用户的5个中间版本)
第17行: 第17行:
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
CREATE DATABASE wiki_example_com DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;
CREATE DATABASE wiki_example_com DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;
GRANT ALL ON wiki_example_com.* TO `wiki_example_com`@`localhost` IDENTIFIED BY 'password';
CREATE USER `wiki_example_com`@`localhost` IDENTIFIED BY 'password_here';
GRANT ALL ON wiki_example_com.* TO `wiki_example_com`@`localhost`;
</syntaxhighlight>
</syntaxhighlight>


=== PHP ===
=== PHP ===
 需要安裝一些[[PHP]]的套件:
 需要安裝一些[[PHP]]的套件:
<syntaxhighlight lang="shell">
<syntaxhighlight lang="shell">
sudo apt install php7.4-apcu php7.4-gd php7.4-intl php7.4-mbstring php7.4-mysql php7.4-xml
sudo apt install php7.4-apcu php7.4-gd php7.4-intl php7.4-mbstring php7.4-mysql php7.4-xml
</syntaxhighlight>
</syntaxhighlight>


=== 軟體 ===
<syntaxhighlight lang="shell">
到官方網站上下載安裝就可以了。
sudo apt install php8.2-apcu php8.2-gd php8.2-intl php8.2-mbstring php8.2-mysql php8.2-xml
</syntaxhighlight>
 
=== nginx ===


 其中[[nginx]]需要設定這些參數,主要是把所有request都丟給<code>index.php</code>以實做Pretty URL(SEO):
 其中[[nginx]]需要設定這些參數,主要是把所有request都丟給<code>index.php</code>以實做Pretty URL(SEO):
<pre>   index index.php index.html;
 
<syntaxhighlight lang="nginx">
   index index.php index.html;
    try_files $uri $uri/ /index.php?$args;
    try_files $uri $uri/ /index.php?$args;
    access_log /var/log/nginx/wiki.gslin.com_ssl-access.log combined_ssl;
    access_log /var/log/nginx/wiki.gslin.com_ssl-access.log combined_ssl;
第38行: 第46行:
      fastcgi_intercept_errors on;
      fastcgi_intercept_errors on;
      fastcgi_pass php74;
      fastcgi_pass php74;
    }</pre>
    }
</syntaxhighlight>
 
=== 軟體 ===
 
在官方網站上下載就可以了。


== 設定 ==
== 設定 ==
第52行: 第65行:


=== 其他 ===
=== 其他 ===
* 關閉編輯時預設Watch功能<ref name="wgdefaultuseroptions">{{Cite web |url=https://www.mediawiki.org/wiki/Manual:$wgDefaultUserOptions |title=Manual:$wgDefaultUserOptions - MediaWiki |accessdate=2018-02-05}}</ref>:
* 關閉編輯時預設Watch功能<ref name="wgdefaultuseroptions">{{Cite web |url=https://www.mediawiki.org/wiki/Manual:$wgDefaultUserOptions |title=Manual:$wgDefaultUserOptions - MediaWiki |accessdate=2018-02-05}}</ref>:
<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
$wgDefaultUserOptions['watchdefault'] = 1;
$wgDefaultUserOptions['watchdefault'] = 0;
</syntaxhighlight>
</syntaxhighlight>
* 允許上傳<code>svg</code>:
* 允許上傳<code>svg</code>:

2023年5月12日 (五) 07:56的最新版本

MediaWiki是一套Wiki系统。

简介

MediaWiki是维基百科所使用的系统。

为什么会向企业推荐MediaWiki

对于企业来说,选择MediaWiki有几个方面是对于各种成本较好:

  • 由于是维基百科所使用的系统,软体的成熟度已经被社群磨练十来年了。
    • 该有的功能都有,像是Template与Category的设计都很完整了。
    • 尤其是Template,有很多可以直接从维基百科抄过来用。
  • 也因为维基百科使用的关系,软体开发的活跃度远比其他Wiki软体热烈,各类社群资源(像是套件、文件,以及遇到Bug时可以搜寻到的机率)比较丰富。
    • 尤其是套件的部份,甚至有套件支援直接把Lua程式码放到页面上执行(沙箱环境),这使得文件的弹性大增。

安装

MySQL

CREATE DATABASE wiki_example_com DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;
CREATE USER `wiki_example_com`@`localhost` IDENTIFIED BY 'password_here';
GRANT ALL ON wiki_example_com.* TO `wiki_example_com`@`localhost`;

PHP

需要安装一些PHP的套件:

sudo apt install php7.4-apcu php7.4-gd php7.4-intl php7.4-mbstring php7.4-mysql php7.4-xml
sudo apt install php8.2-apcu php8.2-gd php8.2-intl php8.2-mbstring php8.2-mysql php8.2-xml

nginx

其中nginx需要设定这些参数,主要是把所有request都丢给index.php以实做Pretty URL(SEO):

    index index.php index.html;
    try_files $uri $uri/ /index.php?$args;
    access_log /var/log/nginx/wiki.gslin.com_ssl-access.log combined_ssl;

    location ~ \.php$ {
        include fastcgi.conf;
        fastcgi_intercept_errors on;
        fastcgi_pass php74;
    }

软体

在官方网站上下载就可以了。

设定

这些设定都是修改LocalSettings.php

SEO 相关

  • 网址SEO化。在nginx上主要是把所有的request都丢给index.php,之后告诉MediaWiki使用Pretty URL[1]
$wgScriptPath = "";
$wgArticlePath = "/wiki/$1";
$wgUsePathInfo = true;
  • 关闭nofollow[2]
$wgNoFollowLinks = false;

其他

  • 关闭编辑时预设Watch功能[3]
$wgDefaultUserOptions['watchdefault'] = 0;
  • 允许上传svg
$wgFileExtensions[] = 'svg';
  • 关闭巡查功能:
$wgUseFilePatrol = false;
$wgUseNPPatrol = false;
$wgUseRCPatrol = false;

套件

由于会用到维基百科设计好的Template,有不少套件需要安装:

其他:

参考资料

外部连结