信步漫談之Wiki知識庫——搭建mediawiki
阿新 • • 發佈:2020-12-22
目錄
- 1 目的
- 2 資源
- 3 安裝LAMP
- 4 建立資料庫
- 5 安裝 MediaWiki
- 6 MediaWiki 初始配置
- 7 MediaWiki 使用方式
- 8 MediaWiki 詞條編輯語法
- 9 遇到的問題及解決
- 10 相關知識
- 11 參考資料(感謝)
1 目的
- 使用 LAMP (Linux,Apache,MySQL和PHP)在 CentOS 7 上安裝 MediaWiki 的方式和遇到的問題和遇到的問題
- MediaWiki 的使用方式
- MediaWiki 詞條編寫的語法
2 資源
系統:CentOS 7.7.1908-Minimal(本文伺服器地址:192.168.64.128)
Mediawiki版本:mediawiki-1.35.0.tar.gz( mediawiki各版本下載地址)
3 安裝LAMP
- 關閉防火牆
# systemctl stop firewalld.service
# systemctl disable firewalld.service
- 啟用epel和remi儲存庫以使用最新的PHP 7.x版本安裝LAMP
# yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# yum install epel-release
- 禁用安裝php5.4以從remi儲存庫安裝php7.3
# yum-config-manager --disable remi-php54 # yum-config-manager --enable remi-php73
- 繼續安裝Apache , MariaDB和PHP以及執行MediaWiki所需的必要擴充套件
# yum -y install httpd
# yum -y install mariadb-server mariadb-client
# yum install php php-mysql php-pdo php-gd php-mbstring php-xml php-intl texlive
- 啟動並啟用服務
# systemctl start httpd # systemctl enable httpd # systemctl start mariadb # systemctl enable mariadb
- 執行 MariaDB 安全配置
# mysql_secure_installation
- 重新啟動Apache Web伺服器
# systemctl restart httpd
4 建立資料庫
# mysql -u root -p
- 建立 media_wiki 資料庫,如需獨立使用者訪問,則建立使用者分配許可權,也可直接使用 root 訪問
# CREATE DATABASE media_wiki;
# CREATE USER 'wiki'@'localhost' identified by '123456';
# GRANT ALL PRIVILEGES on media_wiki.* to 'wiki’@'%';
# FLUSH PRIVILEGES;
# QUIT;
5 安裝 MediaWiki
- 將下載的安裝包上傳到 /opt/mediawiki 目錄,解壓到 /var/www/html 目錄下,重新命名為 wiki
# cd /opt/mediawiki
# tar -zxvf mediawiki-1.35.0.tar.gz -C /var/www/html
# cd /var/www/html
# mv mediawiki-1.35.0 wiki
- 重啟 httpd 服務
systemctl restart httpd
6 MediaWiki 初始配置
訪問 MedisWiki 應用程式(http://192.168.64.128),並根據提示進行安裝即可。
- 選擇語言(中文)
- 配置資料庫名稱和使用者密碼
- 配置管理員賬號、密碼、郵箱
- 直到最後一步安裝成功,提示下載 LocalSettings.php
- 將 LocalSettings.php 拷貝至 wiki 的根目錄(index.php的同級目錄)
- 完成安裝
7 MediaWiki 使用方式
- 新建頁面
如果想新建一個 HelloWorld 頁面,可在位址列輸入:http://192.168.64.128/wiki/index.php/HelloWorld,在出現的頁面中點選"建立",輸入內容後點擊"儲存頁面"即可。
頁面支援 MedisWiki 語法。 - 修改導航欄
通過wiki地址index.php/MediaWiki:Sidebar,如:http://192.168.64.128/wiki/index.php/MediaWiki:Sidebar,或者在搜尋欄中輸入"mediawiki:sidebar",進入頁面後點擊編輯即可,格式如下:
*導航欄名稱一
**連結一地址|連結一名稱
**連結二地址|連結二名稱
*導航欄名稱二
**連結一地址|連結一名稱
**連結二地址|連結二名稱
8 MediaWiki 詞條編輯語法
基本編輯語法如下,詳細請見 MediaWiki 文件
== Heading Example ==
=== SubHeading 1 ===
==== List Example ====
* List 1
* List 2
* List 3
** List 3.1
** List 3.2
*** List 3.2.1
*** List 3.2.2
==== Number List Example ====
# Number 1
# Number 2
# Number 3
## Number 3.1
### Number 3.1.1
==== Indent Example ====
No Indent!
: Indent 1
:: Indent 2
::: Indent 3
==== List ====
;Item 1 : Description 1
;Item 2 : Description 2
;Item 3 : Description 3
=== SubHeading 2 ===
==== Link Example ====
*[[Link 1]]
*[[Link 2]]
*[[首頁]]
*[[#Link|頁面錨點]]
*[http://www.google.com Google]
*[mailto:[email protected] mailto]
*[[media:test.txt]]
==== Font Example ====
*''斜體
*'''黑體
*'''''斜體加黑體
*''''左右各一個單引號''''
=== SubHeading 3 ===
==== 用線分割文字 ====
This is the first line.
----
This is the second line.
==== Text Example ====
<pre>
abcdefg [[main]]
haha
haha
</pre>
==== HTML Example ====
<center>Center Align</center>
==== Table Example ====
{| class="wikitable" border="1"
|-
! header 1
! header 2
! header 3
|-
| row 1, cell 1
| row 1, cell 2
| row 1, cell 3
|-
| row 2, cell 1
| row 2, cell 2
| row 2, cell 3
|}
9 遇到的問題及解決
- 安裝過程提示:yum-config-manager: command not found
原因:系統預設沒有安裝這個命令
解決:這個命令在 yum-utils 包裡,通過命令 yum -y install yum-utils 安裝即可
10 相關知識
-
執行 mysql_secure_installation 會執行幾個設定
a)為root使用者設定密碼
b)刪除匿名賬號(生產環境建議刪除)
c)取消root使用者遠端登入(root 賬號是否允許遠端登入)
d)刪除test庫和對test庫的訪問許可權(是否刪除 test 庫)
e)重新整理授權表使修改生效(重新整理使用修改立即生效) -
為什麼 MedisWiki 不支援 markdown 語法?(來源於網路)
作為維基百科的載體,mediawiki 語言的設計有以下兩個特點- 將頁面關聯起來,構建一個知識網路。
- 使用可定製的標記。
和早年的rtf格式一樣,markdown語言實際上只是一種富文字格式,因此markdown不需要考慮各個文件之間的關係,它的連結語法也無法與mediawiki相比,更沒有為頁面的複用與可定製的連結設計專門的語句。下面的這些語句不可能從mediawiki遷移到markdown:
- 用於實現頁面模板、定製格式的嵌入包含{{}}
- 用於實現頁面分類帶多個引數的內部連結[[]]
- 像“巨集”一樣在模板內提供基本邏輯功能的解析器函式{{#}}
因此markdown就無法實現mediawiki 的某些基本功能,難以表達某些複雜格式的文字,純markdown的wiki即使有也會因為缺少這些功能而難以駕馭數量多、結構複雜的頁面。