MoinMoin Wiki 在Linux Apache下的安裝

來源:互聯網
上載者:User

    最近將http://wiki.cwowaddon.com/遷移到了Dreamhost的主機上, 由於本人不熟悉Linux和Apache其中遇到了不少問題Google查閱了一些文檔並不盡如人意, 磕磕絆絆終歸是搞定了, 做個總結以供參考. 一些細節問題請先查看我的上一篇Blog MoinMoin Wiki 在IIS下的安裝與升級.

  • 準備工作

下載Python和最新版的MoinMoin Wiki, 本文樣本中的環境:

主目錄: /home/simonw

Web目錄: /home/simonw /wiki.cwowaddon.com

Python版本2.5

Wiki版本為1.5.7

Wiki解壓安裝檔案目錄: /home/simonw /moin-1.5.7

Wiki安裝目錄: /home/simonw /MoinMoin

Wiki執行個體目錄: /home/simonw /MoinMoin/simonwwiki

再廢話幾句, Dreamhost上預設安裝了Python2.3, 在wiki安裝時會有幾個警告, 所以我自己安裝了Python2.5, 可以參考在DreamHost上安裝python 2.5, 過程很簡單.   

  • 安裝Wiki
tar xzf moin-1.5.7.tar.gzcd moin-1.5.7python setup.py --quiet install --prefix=/home/simonw/MoinMoin --record=install.log

少許安裝完畢後會在/home/simonw /MoinMoin目錄下產生這幾個子目錄lib(主運行程式), share(Wiki執行個體的模板), bin三個子目錄. 

  • 建立Wiki執行個體

    將wiki執行個體置於/home/simonw /MoinMoin/simonwwiki而非Web目錄下可以使資料更加安全, 也不用在設定其他的許可權. 建立過程主要就是從share目錄中拷貝data, underlay目錄, 設定檔wikiconfig.py, moin.fcg(入口調用檔案, 此處使用了FastCGI模式, 所以用了這個檔案) 到wiki執行個體目錄中. 同樣可以依據此方式建立多個wiki執行個體.

    將/home/simonw /MoinMoin/share/moin/htdocs目錄映射到web目錄, 這不是必須的, 你完全可以拷貝到web目錄, 但這裡存放的是css等skin檔案因此共用比較合適.

cd /home/simonw/wiki.cwowaddon.commdir wikiln -s /home/simonw/MoinMoin/share/moin/htdocs wiki

    開啟moin.fcg在頂部添加下面的引用路徑, 以便代碼能夠找到.

#!/home/simonw/bin/python/bin/python# -*- coding: iso-8859-1 -*-import syssys.path.insert(0, '/home/simonw/lib/lib/python2.5')sys.path.insert(0, '/home/simonw/MoinMoin/lib/python2.5/site-packages')sys.path.insert(0, '/home/simonw/MoinMoin/simonwwiki')

    配置wikiconfig.py

data_dir = '/home/simonw/MoinMoin/simonwwiki/data/'data_underlay_dir = '/home/simonw/MoinMoin/simonwwiki/underlay/'url_prefix = '/wiki/htdocs'

 

  • 配置Apache

開啟網站的FastCGI模式, 將比CGI方式快出5倍以上, 把moin.fcg拷貝到/home/simonw/wiki.cwowaddon.com, 並設定為可執行.

chmod +x moin.fcg

建立.htaccess檔案, 配置web目錄.

options +FollowSymLinksoptions -IndexesDirectoryIndex moin.fcgReWriteEngine onRewriteRule ^img/ - [L]RewriteRule ^wiki/htdocs/ - [L]RewriteBase /RewriteRule ^moin\.fcg - [L]RewriteRule ^(.*)$ moin.fcg/$1 [L]

上面Url rewrite很關鍵, Url會變得更加友好http://wiki.cwowaddon.com/simonw 而不是http://wiki.cwowaddon.com/moin.fcg/simonw  還需要最後一步使得頁面輸出的Url也成為這樣. 開啟moin.fcg修改代碼

def handle_request(req, env, form):    request = RequestFastCGI(req, env, form, properties = {'script_name': '/'})    request.run()

 

    本文參考了MoinMoinWiki本身的安裝協助文檔, 和http://wiki.dreamhost.com/index.php/MoinMoin, 其中都有一些毛病, 最終修正後, 結果較為完美.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.