幫MediaWiki設定防止外連
MediaWiki提供了權限設定的功能,但卻不能擋住上傳檔案的下載。由於有些文件我不希望別人直接從連結就下載,最好請他們從MediaWiki首頁開始點進去才能觀看,所以我需要一個控管這方面權限的功能。
MediaWiki預設是將檔案上傳到安裝目錄的/images資料夾當中,因此我只要設定Apache,如果要存取/images資料夾下的檔案時,必須要從MediaWiki的首頁過來,這樣就可以解決外連問題了。
請在Apache的httpd.conf設定檔裡面加入以下設定:
#以下是允許連結的網站
SetEnvIf Referer "^http://xxx\.xxx\.xx\.xxx/mediawiki/" local_ref
SetEnvIf Referer "^http://localhost/mediawiki/" local_ref
SetEnvIf Referer "^http://127\.0\.0\.1/mediawiki/" local_ref
#禁止使用者使用wget
SetEnvIfNoCase User-Agent "^Wget" banned_useragent
<Directory "C:/AppServ/www/mediawiki/images">
Order Deny,Allow
Deny from all
Allow from env=local_ref
</Directory>
以下解釋各設定:
- http://xxx\.xxx\.xx\.xxx/mediawiki/:你允許的網址,就是你MediaWiki的安裝位置。通常會隨著每台伺服器的設定而有所不同,該部份的設定都要調整過喔。
- C:/AppServ/www/mediawiki/images:MediaWiki的images資料夾在伺服器裡的實體位置,要注意Windows路徑必須要改成「/」而不是「\」
再重新啟動Apache,設定就生效了。使用者只能從MediaWiki的首頁進去才能看得到上傳的圖片,而不能直接用網址連結!
還是不太喜歡wiki
回覆刪除都沒在寫 cc...噓~
創用CC嗎?
回覆刪除wiki有創用啊
回覆刪除怎麼會沒有
wiki授權有三種形式以上
排斥之前先了解比較好喔
-路人Z
唔,這邊的情況是說我用MediaWiki撰寫的東西不想要讓人使用,所以要限制,不想要用創用CC授權。
回覆刪除而David可能是說他寫的東西不是給創用CC授權的吧
回覆刪除