Mediawiki 設定
出自六年制學程
目錄
網站無法正常顯示
修改 mediawiki 所在資料夾名稱
- 當修改 mediawiki 所在資料夾名稱,須同步改 LocalSettings.php 中的 $wgScriptPath 。但此時 mediawiki 仍會從快取中取得包含舊資料夾名稱的許多快取頁,導致網站完全無法運作。請依畫面指示,在相關的檔案中加一行「echo __FILE__;」,使網頁內容發生變化,導致產生新的快取,問題即可逐步排除。例如在 includes/Defines.php 中加「echo __FILE__;」。
LocalSettings.php
權限
$wgGroupPermissions['*']['createaccount'] = false; // 禁止路人建帳號 $wgGroupPermissions['*']['edit'] = false; // 禁止路人編頁面 $wgGroupPermissions['user']['edit'] = true; // 允許註冊者編頁面,預設值不必再另設 $wgGroupPermissions['*']['read'] = false; // 禁止路人讀頁面 $wgWhitelistRead=array( // 在上列前提下允許路人可讀的有限頁面 "Main Page", "Special:Userlogin", "Wikipedia:Help", urldecode("%E9%A6%96%E9%A0%81") //正體中文的首頁 );
啟用上傳功能(預設關閉)
$wgEnableUploads = true;
images chmod 777 (或允許帳號 apache 寫入內容)
啟用svg
實體化時是依 svg 指示繪出 png 。
- 先檢查 apache 中的 mime.types (DSM 在 /usr/syno/apache/conf/mime.types)是否含:
image/svg+xml svg svgz
- PHP支援的轉圖模組
外觀
- 共筆頁用 skins/monobook/main.css
- 可列印版 skins/common/commonPrint.css
- HTML載入指令為 <link rel="stylesheet" href="/wiki117/load.php?debug=false&lang=zh-tw&modules=mediawiki.legacy.commonPrint,shared|skins.vector&only=styles&skin=vector&*" />
- 丁丁在上述兩個 css 均加入:
table.nicetable {border:1px solid black;border-collapse:collapse;} table.nicetable td {border:1px solid black;border-collapse:collapse;padding: 0.3em 0.5em;} table.nicetable th {border:1px solid black;border-collapse:collapse;font-weight:normal;}
更改某帳號密碼
使用腳本檔
- 得到的密碼和 web 介面「建立新帳號」時所產生的密碼格式相同。但同一個人兩次執行的結果並不相同。
- 執行步驟:
- 進到伺服器的作業系統,並有執行 php 腳本的權限。
- 進入某 mediawiki 的maintenance子目錄。運行下列命令:
php changePassword.php --user=someuser --password=somepass
其中的「somepass」就是您將要設置的密碼,而「someuser」就是您將修改其密碼的用戶名,該用戶名應出現在數據庫的「user」表中。
直接在 MySQL 中修改
- 可通過 MediaWiki 認證的密碼有四種:
- UPDATE USER SET user_password = concat(':B:鹽:',MD5(CONCAT('鹽-',MD5('somepass'))) WHERE user_name='someuser';
- UPDATE USER SET user_password = concat(':A:',MD5('somepass')) WHERE user_name='someuser';
- UPDATE USER SET user_password = MD5(CONCAT(user_id,'-',MD5('somepass')))
WHERE user_name='someuser';
- UPDATE USER SET user_password = MD5('somepass') WHERE user_name='someuser';
- $wgPasswordSalt已被設為true值(預設),使用上述的 1,3 ,設為 false 使用上述的 2,4 。
- changePassword.php 產生的密碼是上述的 1 。