「MediaWiki」:修訂間差異
跳至導覽
跳至搜尋
(未顯示同一使用者於中間所作的 59 次修訂) | |||
第1行: | 第1行: | ||
'''MediaWiki'''是一套[[Wiki]]系統。 | |||
== 簡介 == | |||
MediaWiki是維基百科所使用的系統。 | |||
=== 為什麼會向企業推薦MediaWiki === | |||
對於企業來說,選擇MediaWiki有幾個方面是對於各種成本較好: | |||
* 由於是維基百科所使用的系統,軟體的成熟度已經被社群磨練十來年了。 | |||
** 該有的功能都有,像是Template與Category的設計都很完整了。 | |||
** 尤其是Template,有很多可以直接從維基百科抄過來用。 | |||
* 也因為維基百科使用的關係,軟體開發的活躍度遠比其他[[Wiki]]軟體熱烈,各類社群資源(像是套件、文件,以及遇到Bug時可以搜尋到的機率)比較豐富。 | |||
** 尤其是套件的部份,甚至有套件支援直接把[[Lua]]程式碼放到頁面上執行(沙箱環境),這使得文件的彈性大增。 | |||
== 安裝 == | == 安裝 == | ||
=== MySQL === | |||
<syntaxhighlight lang="sql"> | |||
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`; | |||
</syntaxhighlight> | |||
=== PHP === | |||
需要安裝一些[[PHP]]的套件: | |||
<syntaxhighlight lang="shell"> | |||
sudo apt install php7.4-apcu php7.4-gd php7.4-intl php7.4-mbstring php7.4-mysql php7.4-xml | |||
</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): | |||
<syntaxhighlight lang="nginx"> | |||
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; | |||
} | |||
</syntaxhighlight> | |||
=== 軟體 === | |||
在官方網站上下載就可以了。 | |||
== 設定 == | == 設定 == | ||
* 網 | 這些設定都是修改<code>LocalSettings.php</code>。 | ||
=== SEO 相關 === | |||
* 網址[[SEO]]化。在[[nginx]]上主要是把所有的request都丟給<code>index.php</code>,之後告訴MediaWiki使用Pretty URL<ref>{{Cite web |url=https://www.mediawiki.org/wiki/Manual:Short_URL/wiki/Page_title_--_nginx_rewrite--root_access |title=Manual:Short URL/wiki/Page title -- nginx rewrite--root access - MediaWiki |accessdate=2018-02-05}}</ref>: | |||
<syntaxhighlight lang="php">$wgScriptPath = ""; | |||
$wgArticlePath = "/wiki/$1"; | |||
$wgUsePathInfo = true;</syntaxhighlight> | |||
* 關閉<code>nofollow</code><ref>{{Cite web |url=https://www.mediawiki.org/wiki/Manual:$wgNoFollowLinks |title=Manual:$wgNoFollowLinks - MediaWiki |accessdate=2018-02-05}}</ref>: | |||
<syntaxhighlight lang="php">$wgNoFollowLinks = false;</syntaxhighlight> | |||
=== 其他 === | |||
* 關閉編輯時預設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"> | |||
$wgDefaultUserOptions['watchdefault'] = 0; | |||
</syntaxhighlight> | |||
* 允許上傳<code>svg</code>: | |||
<syntaxhighlight lang="php"> | |||
$wgFileExtensions[] = 'svg'; | |||
</syntaxhighlight> | |||
* 關閉巡查功能: | |||
<syntaxhighlight lang="php"> | |||
$wgUseFilePatrol = false; | |||
$wgUseNPPatrol = false; | |||
$wgUseRCPatrol = false; | |||
</syntaxhighlight> | |||
== 套件 == | == 套件 == | ||
* Scribunto | |||
由於會用到維基百科設計好的Template,有不少套件需要安裝: | |||
* [https://www.mediawiki.org/wiki/Extension:Cite Extension:Cite - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:ParserFunctions Extension:ParserFunctions - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:Scribunto Extension:Scribunto - MediaWiki] | |||
其他: | |||
* [https://www.mediawiki.org/wiki/Extension:CodeEditor Extension:CodeEditor - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:Gadgets Extension:Gadgets - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:SlackNotifications Extension:SlackNotifications - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:SyntaxHighlight Extension:SyntaxHighlight - MediaWiki] | |||
* [https://www.mediawiki.org/wiki/Extension:WikiEditor Extension:WikiEditor - MediaWiki] | |||
== 參考資料 == | == 參考資料 == | ||
{{Reflist|2}} | {{Reflist|2}} | ||
== 外部連結 == | |||
* {{Official|https://www.mediawiki.org/}} {{en}} | |||
[[Category:軟體]] |
於 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 相關
$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,有不少套件需要安裝:
其他:
- Extension:CodeEditor - MediaWiki
- Extension:Gadgets - MediaWiki
- Extension:SlackNotifications - MediaWiki
- Extension:SyntaxHighlight - MediaWiki
- Extension:WikiEditor - MediaWiki
參考資料
- ↑ Manual:Short URL/wiki/Page title -- nginx rewrite--root access - MediaWiki. [2018-02-05].
- ↑ Manual:$wgNoFollowLinks - MediaWiki. [2018-02-05].
- ↑ Manual:$wgDefaultUserOptions - MediaWiki. [2018-02-05].
外部連結
- 官方網站 (英文)