Mediawiki 安裝

出自六年制學程
在2022年6月7日 (二) 13:36由丁志仁對話 | 貢獻所做的修訂版本

(差異) ←上個修訂 | 最新修訂 (差異) | 下一修訂→ (差異)
跳轉到: 導覽搜尋

1.2x~1.37.2

系統要求

  • 下載 MediaWiki 下載網址
  • Web 伺服器 例如 ApacheIIS
  • PHP
    1. 1.2x:5.0 及其後續版本
    2. 1.34:7.2 及其後續版本,移除對 7.0、7.1的支援。
  • 資料庫伺服器
    • MySQL 5.0 或後續版本
    • PostgreSQL 8.1 或後續版本 (同時需要 plpgsqltsearch2)
  • 資料庫管理軟體
  • 外掛:

注意事項

  • MediaWiki 可以通過瀏覽器進行安裝配置,由配置檔 LocalSettings.php 之存在與否,判斷是否啟動安裝程序。
  • MediaWiki 可以與其他 Web 程式共用資料庫, 例如 phpBB 等。
  • 自從 MediaWiki 1.19 開始必須要有 PHP 5。如果你正在使用低於此版本的 PHP,你將不能升級到 1.19 及以後的版本。
  • 過期的版本不再受到支援

安裝步驟

  1. 到 mediawiki 下載最新版本
  2. 把 mediawiki 解壓縮並上傳至伺服器
  3. 用 putty 以 root 權限下「tar zxvf xxx.tar.gz」解壓縮後改資料夾名稱
  4. 開啟瀏覽器連至 http://jendo.org.tw/mediawiki/ 進入安裝首頁
  5. 點選安裝(Set up the wiki)
  6. 確認伺服器的 PHP 和 MySQL 版本是否能安裝最新版 mediawiki
  7. 安裝程式檢查:
    • PHP 與 MySQL 版本。
    • 找不到 GNU diff3 文字比對工具程式,而您現在可忽略它,但可能會更頻繁地遇到編輯衝突。
    • 找到 ImageMagick:/usr/bin/convert。若您開啟了檔案上傳功能,將可啟用縮圖功能。
    • 找到 Git 版本控制軟體:/usr/bin/git。
    • 使用 PHP intl 擴充套件做 Unicode 正規化。或
      警告:因為尚未安裝 intl PECL 延伸函式庫以處理 Unicode 正規化,故只能退而採用較慢的純 PHP 實作。如果您運行着一個高流量的網站,請參閱 Unicode 正規化一文。
  8. 設計配置檔內容:
    • 使用服務器名“http://jendo.org”。
    • 使用服務器URL“http://jendo.org/wiki1232”。
    • 資料庫類型:MariaDB、MySQL 使用 InnoDB 引擎,字集為 UTF-8。
    • 選用「僅授權的編輯者」(即「編輯受限」)模式,僅經核准的使用者才可以編輯,有帳號者可以編,所有人可以看。若選「需要註冊帳號」允許登入的使用者編輯文章,而路人甲乙均可註冊帳號。
    • 版權:知識共享署名-非商業性使用-相同方式共享
    • 不開啟外寄電子郵件。或
      啟用電子郵件 admin@jendo.org
  9. 郵件通知:
    • v 啟用用戶到用戶的電子郵件
    • x 啟用用戶討論頁通知
    • x 啟用監視列表通知
    • v 啟用電子郵件認證
  10. 擴充套件
    • Cite 使用<ref[ name=id]> and <references/> 標籤來加引用來源
    • ConfirmEdit 提供驗證碼功能
    • Gadgets 允許用戶啟用JS為主,提供使用者編輯頁面的小工具
    • ImageMap 用 imagemap 標籤,製作可點擊的地圖
    • InputBox 允許特定的HTML表格
    • Interwiki 跨網頁連結
    • LocalisationUpdate 維持網頁資訊更新
    • Nuke 允許管理員透過Special:Nuke大量刪除指定用戶所創建之頁面
    • ParserFunctions 啟用具有邏輯函數的語法分析器
    • PdfHandler 以翻頁的方式看PDF檔
    • Poem 使用 poem 標籤來達成詩的格式
    • Renameuser 替用戶改名
    • SpamBlacklist 提供垃圾資料黑名單
    • SyntaxHighlight_GeSHi 程式碼區塊,差別顏色顯示
    • TitleBlacklist 允許管理員設定一些規則,用於阻止用戶名註冊,以及創建、移動或上傳頁面,並給出警告資訊。
    • WikiEditor 使編輯功能表更豐富
  11. 1.35 擴充套件
    特殊頁面
    • CiteThisPage 使用<ref[ name=id]> and <references/> 標籤來加引用來源。「頁面工具 / 引用此頁面」
    • Interwiki 看跨wiki連結資料表。「資料和工具 / 檢視跨wiki資料」
    • Nuke 允許管理員透過 Special:Nuke 大量刪除指定用戶所創建之頁面。「頁面工具 / 大量刪除」
    • Renameuser 替用戶改名,需要開啟 renameuser 權限。「使用者與權限 / 重新命名使用者」
    • ReplaceText 文字替換。為管理員們提供的是一種表單,可用於在其維基站點所有頁面(包括頁面內容和頁面名稱)的範圍內進行文字搜索與替換。對於 Semantic MediaWiki ,當屬性名稱或取值,或者模板名稱或欄位發生變更的時候,這項擴充套件尤為有用。如果此類變更需要許多已有的維基頁面做出相應的變更,您即可利用這項擴充套件一步完成操作。「資料和工具 / 取代文字」
      編輯者
    • WikiEditor 使編輯功能表更豐富
    • VisualEditor 視覺化編輯器,所見即所得
    • CodeEditor (需要 WikiEditor)
      剖析器鉤
    • CategoryTree 以樹狀結構提供了 Wiki 類別的動態視圖。它使用AJAX。「頁面清單 / 分類樹」
    • Cite 使用<ref[ name=id]> and <references/> 標籤來加引用來源
    • ImageMap 用 imagemap 標籤,製作可點擊的地圖
    • InputBox 允許特定的HTML表格
    • ParserFunctions 啟用具有邏輯函數的語法分析器
    • Poem 使用 poem 標籤來達成詩的格式
    • Scribunto 在 MediaWiki 中嵌入指令碼。目前唯一被支援的指令碼語言是 Lua。
    • SyntaxHighlight_GeSHi 使用<syntaxhighlight>擴充套件標籤對原始碼提供了豐富的格式,用不同顏色顯示程式碼區塊。
    • TemplateData 以 <templatedata> JSON </templatedata> 標籤,來提供模板參數。
      媒體處理器
    • PdfHandler 以翻頁的方式看PDF檔
      防止垃圾訊息
    • ConfirmEdit 提供驗證碼功能
    • SpamBlacklist 提供垃圾資料黑名單
    • TitleBlacklist 允許管理員設定一些規則,用於阻止用戶名註冊,以及創建、移動或上傳頁面,並給出警告資訊。
      API
    • PageImages 蒐集有關頁面上使用的圖照信息,以返回最能代表文章的單個縮圖。
      其他
    • Gadgets 允許用戶啟用JS為主,提供使用者編輯頁面的小工具
    • LocalisationUpdate 維持網頁資訊更新
    • MultimediaViewer 多媒体查看器,為用戶提供一個不同的界面,以便在其瀏覽器中查看完整大小或接近完整大小的圖像,而不會造成不必要的頁面加載或混亂的插頁式頁面。
    • OATHAuth 兩步驗證,是基於時間的一次性密碼(TOTP)實現的。它通過你擁有的東西(你的手機或桌面客戶端)和你知道的東西(你的使用者名稱/密碼)提供雙因素驗證。大多數功能手機、智慧手機和桌機都支援。
    • SecureLinkFixer 如果域始終需要 HTTPS,就自動將 URL 重寫為 HTTPS。
    • TextExtracts 提供API來提取純文字或精簡HTML(刪除HTML中的一些CSS樣式)的頁面內容。
  12. 啟用檔案上傳
    • 已刪除文件的目錄:/volume1/web/wiki1232/images/deleted
  13. 標誌URL:$wgStylePath/common/images/wiki.png
    • 1.26.2~1.34.0:$wgResourceBasePath/resources/assets/wiki.png
  14. 開啟即時共享資源:允許在全世界任何一個 MediaWiki 實體能夠使用維基共享資源的任何已上傳的媒體檔案。
  15. 快取
    • x 無緩存(不影響功能,但對較大型的wiki網站會有速度影響)
    • v PHP物件緩存(APC、XCache或WinCache)
  16. 下載 LocalSettings.php 再上傳到 wiki 所在的資料夾
  17. 再一次連至http://jendo.org.tw/mediawiki/ 即可使用
  18. 擴充套件資料表安裝情形:
Creating oathauth_users table ...done.
...oathauth_users table does not contain secret_reset field.
...have module field in oathauth_users table.
...oathauth_users table does not contain secret field.

從既有的 MediaWiki 複製新的 MediaWiki 之步驟

  1. 用root帳戶登入
  2. 新增一個wiki
  3. 從既有的wiki找一個編輯內容最少或內容最相近的wiki複製資料(全複製)
  4. 找一個帳戶,給他新增權限可以管新建的wiki
  5. 打開Filezilla,連線至伺服器,在web裡找到以"新建的wiki的名字"為名的資料夾
  6. 在裡面找到一個檔案叫LocalSetting.php,滑鼠右鍵用EmEditer打開
  7. 找到文件裡的"原wiki的名字",點選"搜尋"->"取代",在"取代"填上"新建的wiki的名字",點選"全部取代"
  8. 小修飾
  9. 換管理人
    • 到http://jendo.org/adminer-4.7.2-mysql.php
    • 在LocalSetting.php 的文件裡找到「Database settings」
    • 複製貼上sever、user、password,並登入
    • 進入資料夾"新建的wiki名稱"->"wiki_user"->選擇資料
    • 更改管理人
  10. 改密碼
    參考Mediawiki_設定的第4條,更改某帳號密碼

安裝後測試

致命的異常

訊息:Fatal exception of type MWException(源於 mediawiki 異常的致命異常)

可在 LocalSettings.php 中加入「$wgShowExceptionDetails = true;」加以排查。會顯示出錯的地方。

常見原因有:

  1. 外掛有問題,把有問題的外掛抑制掉
  2. 存上傳圖片檔案的時候出現:
先檢查
    $wgEnableUploads = true;  
    $wgUseImageMagick = true;  
    $wgImageMagickConvertCommand = "/usr/bin/convert";

再檢查 image 目錄權限是不是 777

可用或接受:

不可用或不接受:

  • html a tag
  • html img tag

進階修改

  • LOGO圖像修改
    • MediaWiki安裝後的默認logo(/skins/common/images/wiki.png)
    • logo圖像的大小應為135px x 135px
    • 修改方式
    1. 上傳圖檔至伺服器
    2. 修改MediaWiki設定檔LocalSettings.php文件中的 $wgLogo為指定圖片地址
           $wgLogo="$wgStylePath/common/images/logo.png";
  • 設定時區
    • 修改MediaWiki設定檔LocalSettings.php,增加以下內容:
           $wgLocaltimezone="Asia/Taipei"; 
           $wgLocalTZoffset=date("Z")/60;

參考網址

  1. http://www.mediawiki.org/wiki/Installation/zh-tw
  2. http://www.mediawiki.org/wiki/Manual:Installation_guide/zh-tw
  3. http://benjamin.blog.it360.tw/2010/07/02/435/
  4. http://lib.nksh.tp.edu.tw/jean/lessons/index.php?page=mediawiki
  5. http://wiki.cc.ncu.edu.tw/wiki/網站建置技術文件
  6. http://lib.nksh.tp.edu.tw/jean/lessons/index.php?page=mediawiki