檢視 網站建置技術文件 的原始碼
←
網站建置技術文件
前往:
導覽
、
搜尋
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
使用者
您可以檢視並複製此頁面的原始碼。
==開放以LDAP帳號登入認證== 1、在 /usr/local/etc/openldap/ldap.conf 中加上一行 ::: TLS_REQCERT never 2、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::require_once( 'extensions/LdapAuthentication.php'); :::$wgAuth = new LdapAuthenticationPlugin(); :::$wgLDAPDomainNames = array("Portal"); :::$wgLDAPEncryptionType = array('Portal' => 'ssl'); :::$wgLDAPServerNames = array("Portal"=>"140.115.17.30"); :::$wgLDAPSearchStrings = array("Portal"=>"uid=USER-NAME,ou=People,dc=cc,dc=ncu");$wgLDAPUseLocal = true; :::$wgLDAPAddLDAPUsers = false; :::$wgLDAPUpdateLDAP = false; :::$wgLDAPMailPassword = false; :::$wgLDAPRetrievePrefs = false; :::$wgMinimalPasswordLength = 1; ==開放上傳檔案,並設限檔案副檔名類別== 1、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgEnableUploads = true; :::$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'doc', 'xls', 'ppt', 'pdf', 'docx', 'xlsx', 'pptx', 'vsd', 'pps' ); :::$wgFileBlacklist = array('html', 'htm', 'js', 'jsb','php', 'phtml', 'php3', 'php4', 'phps','shtml', 'jhtml', 'pl', 'py', 'cgi','exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' ); ==禁止一般使用者建立新帳號== 1、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgGroupPermissions['*']['createaccount'] = false; :::$wgGroupPermissions['sysop']['createaccount'] = true; ==設定只有登入系統的使用者,才有權利編輯頁面== 1、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgGroupPermissions['*']['edit'] = false; :::$wgGroupPermissions['user']['edit'] = true; ==置換首頁logo圖檔,為計中logo== 1、先將計中logo圖檔,上傳放置於mediawiki\skins\wiki.gif<br> 2、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgLogo="<nowiki>https://wiki.cc.ncu.edu.tw/mediawiki/skins/wiki.gif</nowiki>"; ==設定正確的時區顯示== 1、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgLocaltimezone="Asia/Taipei"; :::$wgLocalTZoffset=date("Z")/60; ==網址從/mediawiki/index.php/ 改成 /wiki/ 式網址,以達成縮短網址== 1、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgArticlePath = "/wiki/$1"; 2、修改/usr/local/etc/apache22/httpd.conf,增加以下內容: :::Alias /wiki /home/www/mediawiki/index.php :::Alias /index.php /home/www/mediawiki/index.php ==加裝 template: languages extensions,以支援英文版 content頁面編輯== 1、將此檔[[image:P.tgz]]下載後,解壓縮到 mediawiki 下的 extensions 資料夾<br> 2、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::require_once( "$IP/extensions/ParserFunctions/ParserFunctions.php" ); ==加裝 category tree extensions,以支援 subcategory== 1、將此檔[[image:C.tgz]]下載後,解壓縮到 mediawiki 下的 extensions 資料夾<br> 2、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgUseAjax = true; :::require_once( 'extensions/CategoryTree/CategoryTree.php' ); ==加裝 tinymce extensions== 1、將此檔[[image:T.tgz]]下載後,解壓縮到 mediawiki 下的 extensions 資料夾<br> 2、修改MediaWiki設定檔LocalSettings.php,增加以下內容: :::$wgUseTinymce = true; :::$wgDefaultUserOptions ['showtoolbar'] = 0; :::$wgTinymceTheme = "msword"; :::require_once("$IP/extensions/tinymce/TinyMCE_MW.php"); ==將登入/登出改為英文== 先到 mediawiki/languages/messages/ 資料夾下<br> 複製 MessagesEn.php 中 # Login and logout pages 區段的內容<br> 在 MessagesZh_tw.php 中 取代原本的 #Login and logout pages 區段的內容<br> 即可將 login/logout 相關文字改為英文 (包括登入/註冊頁面) ==在首頁加上熱點頁面的前十名== 先新增一個 template 接著進入資料庫<br/> 在 recentchanges、revision、text 這三個 table 中找到剛剛新增的 template 的相對應欄位<br/> 分別將 rc_id、rev_text_id、old_id 記下來<br/> 寫一隻 php 程式進入資料庫 `page` 這個 table 抓出 page_namespace 為 0 的資料<br/> 按照 page_counter 做遞減排序,即可得到熱點頁面的排名<br/> $sql = "SELECT * FROM `page` WHERE page_namespace='0' and `page_title` NOT IN ('".implode("','",$black_list)."') ORDER BY page_counter DESC LIMIT 0,10"; 將找到的資料整理後 UPDATE recentchanges、revision、text 這三個 table<br/> $list .= $i . '. [['.$res['page_title'].']]('.number_format($res['page_counter']).'次瀏覽)'; 分別更新 rc_new_len rev_len old_text<br/> "UPDATE `text` SET `old_text` = '".$list."' WHERE `old_id`=''"; "UPDATE `revision` SET `rev_len` = '".strlen($list)."' WHERE `rev_text_id`=''"; "UPDATE `recentchanges` SET `rc_new_len` = '".strlen($list)."' WHERE `rc_id`=''"; 接著在首頁 include 剛剛新增的 template<br/> 熱點頁面就會顯示在首頁了<br/> 將此 php 程式寫入 crontable 在每日 0 點 1 分時執行,所以每天將更新一次前十名<br/> 只要更改 crontable 的設定就可以修改更新的頻率<br/> ==修改 watchlist== 修改 extensions/AutoWatch.php,增加註解<br /> // if ( $article->mTitle->isTalkPage ()){ $eTitle="Talk Page changed or created in Wiki - ".$article->mTitle->getTalkNsText().':'.$article->mTitle->getDBkey(); $eBody=$article->mTitle->GetFullURL(); $user->sendMail($eTitle, $eBody ) ; // } ==嵌入 mp3檔案== 安裝擴充套件:<br> 至http://www.mediawiki.org/wiki/Extension:Mp3<br> 複製程式碼,並儲存為mp3.php,置於{mediawiki}/extensions/}<br> 將以下檔案下載到{mediawiki}/extensions/</br> http://www.estvideo.com/dew/media/dewplayer.swf<br> 在LocalSettings.php 檔尾加入include("extensions/mp3.php");<br> 修改允許上載的mp3檔案類型(.mp3)<br> $wgFileExtensions = array('gif', 'jpg', 'swf', 'doc', ‘ppt’, ‘xls’, ‘mp3’ );<br> 在文章中的編輯語法</br> <mp3>uploaded filename.mp3 or external URL</mp3><br> 或</br> <mp3>uploaded filename.mp3 or external URL|download</mp3><br> ==嵌入 Youtube影片== 至http://www.mediawiki.org/wiki/Extension:VideoFlash<br> 複製程式碼,並儲存為videoflash.php,置於{mediawiki}/extensions/<br> 打開MediaWiki根目錄裡的 LocalSettings.php ,在這個PHP檔內的最後一行下面加入以下程式碼,並存檔.<br> require_once("extensions/videoflash.php");<br> 之後,就可以在MediaWiki的頁面中,貼上以下語法,直接嵌入YOUTUBE的影音<br> 在wiki頁面中語法<videoflash>youtube影片</videoflash><br> 備註:youtube網址為v=那一字串<br> ==設定不同的 namespace 有不同的群組權限== * 安裝 Lockdown 這個 extension * require_once( "$IP/extensions/Lockdown/Lockdown.php" ); * $wgExtraNamespaces[100] = 'Private'; * $wgExtraNamespaces[101] = 'Private_talk'; * #restrict "read" permission to logged in users * $wgNamespacePermissionLockdown[100]['read'] = array('user'); * $wgNamespacePermissionLockdown[101]['read'] = array('user'); * #設定 group1,sysop 可以有全部的權限 * $wgNamespacePermissionLockdown[100]['*'] = array('group1','sysop'); * $wgNamespacePermissionLockdown[101]['*'] = array('group1','sysop'); * #prevent inclusion of pages from that namespace * $wgNonincludableNamespaces[] = 100; * $wgNonincludableNamespaces[] = 101; ==設定上傳檔案的不同群組權限== * 安裝 NSFileRepo 這個 extension * 同時搭配 Lockdown 設定不同的 namespace 給不同的群組,即可限定所上傳的檔案僅限定為某些群組可以 access * [[File:Project:Filename.txt]] * [[Image:Project:Filename.jpg]] * [[Media:Project:Filename.pdf]] * 其中 GlobalFuncions.php 可能要做修改 ==加裝 WhoIsWatching == * http://www.mediawiki.org/wiki/Extension:WhoIsWatching * 利用 wiki 撰寫會議,需要另外以email 通知與會者,會議紀錄,利用這個 extension可以讓撰寫會議紀錄者, 直接將與會者名單加入 watching 的名單中, 利用系統的自動通知,達到告知的目的. * 原始的 WhoIsWatching 是0.9版, 運用在Mediawiki 1.15.1 有些狀況,修改部份程式碼如下: * 加上 $wgUser 為了判斷只有 sysop 群組才可以將別人加入 watching list 中,不修改時, 原有功能是所有人都可以加其他人進入 watchinglist 中 <pre> new: global $wgUser, $wgRequest, $wgOut, $wgCanonicalNamespaceNames, $whoiswatching_nametype, $whoiswatching_allowaddingpeople; old: global $wgRequest, $wgOut, $wgCanonicalNamespaceNames, $whoiswatching_nametype, $whoiswatching_allowaddingpeople; new: if ($whoiswatching_allowaddingpeople && (in_array('sysop', $wgUser->getGroups())) ) old: if ($whoiswatching_allowaddingpeople) </pre> * 不知為何無法取得 $u->getID, 所以改用 $row->user_id <pre> new: $res = $dbr->select( 'user', '*', '', __METHOD__); old: $res = $dbr->select( 'user', 'user_name', '', __METHOD__); new: //$users[strtolower($u->getRealName())] = $u->getID(); if (($whoiswatching_nametype=='UserName') || ($row->user_real_name=='')) { $users[strtolower($row->user_name)] = $row->user_id; } else { $users[strtolower($row->user_real_name)] = $row->user_id; } old: $users[strtolower($u->getRealName())] = $u->getID(); </pre> ==在每一頁加上notice== * 在你的網頁編輯此頁即可 MediaWiki:Sitenotice ==將外部網頁嵌入wiki頁面== 至http://www.mediawiki.org/wiki/Extension:Website_in_iFrame<br> 下載程式碼,並儲存為websiteFrame.php,置於{mediawiki}/extensions/<br> 打開MediaWiki根目錄裡的 LocalSettings.php ,在這個PHP檔內的最後一行下面加入以下程式碼,並存檔.<br> include("extensions/websiteFrame.php"); /* websiteFrame extension */<br> 之後,就可以在MediaWiki的頁面中,貼上以下語法,直接嵌入外部網頁頁面<br> <websiteframe> <br> website=外部網頁網址<br> height=800 width=70% border=0 scroll=yes (數字可依照自己需求更改) <br> </websiteframe>
返回「
網站建置技術文件
」頁面
導覽選單
個人工具
登入
命名空間
頁面
討論
變體
檢視
閱讀
檢視原始碼
檢視歷史
更多
搜尋
智財權專區
國立中央大學保護智慧財產權專區
導覽
首頁
熱門頁面
近期變更
隨機頁面
分類
版權訊息
說明
網站日誌
服務問題集
新生必讀文件
電算中心各項服務SOP
行政部門各類服務
圖書館
電子公文常見問題
網路服務
Email
VoIP
校園軟體
BB教學
網路管理維護
電腦教室管理
桃園區網中心
ServiceDesk
技術文件
系統管理
資通安全
程式設計
資料庫管理
多媒體應用
工具
連結至此的頁面
相關變更
特殊頁面
頁面資訊